如何获取id = id和id = 9的两个不同表的两列?

时间:2016-04-27 03:53:42

标签: mysql sql join

我的第一个问题:

SELECT `oc_banner_image_description`.`title` 
FROM `oc_banner_image_description` 
WHERE `banner_id`=9

我的第二个问题:

SELECT `oc_banner_image`.`image` FROM `oc_banner_image` WHERE `banner_id`=9

如何使用sql连接将这两个查询转换为单个查询。

3 个答案:

答案 0 :(得分:2)

使用标准连接语法如下所示:

SELECT `oc_banner_image_description`.`title`, `oc_banner_image`.`image`
FROM `oc_banner_image_description` 
JOIN `oc_banner_image` ON `oc_banner_image_description`.`banner_id` = `oc_banner_image`.`banner_id`
WHERE `oc_banner_image`.`banner_id`=9

答案 1 :(得分:0)

试试这个(你可能需要使用与我有的不同的单引号)

SELECT `i`.`image`, `d`.`title`
FROM `oc_banner_image` as `i`, `oc_banner_image_description` as `d` 
WHERE `c.banner_id` = `i.banner_id`
and i.`banner_id`=9

如果这不起作用,请在两个表上试试

select banner_id, count(banner_id) 
  from oc_banner_image 
 group by banner_id order desc;

这会告诉您banner_id表中是否有多个oc_banner_image

答案 2 :(得分:0)

试试这个 SELECT bannerDesc.title , bannerImage.image FROM oc_banner_image_description bannerDesc join oc_banner_image bannerImage on bannerDesc.banner_id = bannerImage.banner_id WHERE bannerImage.banner_id=9