菜鸟mysql加入问题

时间:2011-09-28 22:45:20

标签: mysql left-join join

我有:

  • 一个coupons表,其中包含一个名为owner_idid
  • 的列
  • owners表,其中包含名为idwebsite_url的列。

我想owners.website_url只使用coupons.id(在php变量$coupon_id中提供。

这是我最好的镜头:

SELECT owners.website_url
FROM owners o
LEFT JOIN coupons c
ON o.id = c.owner_id
WHERE c.id='$coupon_id'
LIMIT 1

这是对的吗?我把LIMIT 1放在了,因为每个所有者都有很多优惠券。

2 个答案:

答案 0 :(得分:1)

看起来是正确的,但是在那里使用LEFT JOIN是没有意义的,因为您正在过滤掉WHERE子句中的失败连接。只需使用JOIN

您也不应该需要LIMIT条款,因为所有优惠券都应该有唯一的ID(假设id是主键)并且每张优惠券只有一个所有者。

答案 1 :(得分:0)

    SELECT o.website_url
      FROM coupons c
INNER JOIN owners o ON o.id = c.owner_id
     WHERE c.id='$coupon_id'