我正在尝试连接 2 个名为 ads
和 images
的表
广告
ad_id int(11)
title varchar(200)
price int(10)
description text
city varchar(20)
location varchar(50)
date datetime
图像
img_id int(11)
ad_id int(11)
images varchar(100)
session varchar(32)
这是我尝试加入表格并从广告表格中获取所有信息并从图像表格中获取信息(如果已上传)时的代码。
SELECT *
FROM ads
LEFT OUTER JOIN images
ON images.ad_id = ads.ad_id
GROUP BY ads.ad_id DESC
我遇到的问题是,如果广告没有图像,那么帖子返回时仍然没有图像(这就是我想要的),但它不返回 ad_id。 因此我无法找到没有 ad_id 的帖子。我哪里遗漏了一点?
最佳答案
您需要将 SELECT
语句更改为此。
SELECT ads.*, images.img_id, images.images, images.session
FROM ads
LEFT JOIN images
ON images.ad_id = ads.ad_id
GROUP BY ads.ad_id DESC
我还建议隐式定义您想要从广告表中获得的内容,因为这会加快您的选择速度。
关于php - MYSQL LEFT JOIN 未返回 id,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28438353/