我正在尝试从两个表中选择记录。
请查看表结构的屏幕截图:
表listing

表c_profile

我想显示列表表的记录,而c_profile表中的记录很少。
SELECT c_profile.c_name,c_profile.logo, c_profile.email, listing.id, listing.title, listing.type,listing.job_desc,listing.c_id, listing.time, listing.vote_up from c_profile,listing where c_uid=c_id上面的语句很好,但唯一的问题是它没有选择"vote_up“结果。
但是,如果我使用一个普通的SELECT语句而不使用WHERE,它似乎会工作。
我该如何解决这个问题?
发布于 2016-04-12 13:17:01
我认为您想要的是一个左联接,因为您需要列表表的所有记录,以及c_profile表中的一些记录。
SELECT c_profile.c_name,
c_profile.logo,
c_profile.email,
listing.id,
listing.title,
listing.type,
listing.job_desc,
listing.c_id,
listing.time,
listing.vote_up
FROM listing
LEFT JOIN c_profile ON c_uid=c_id通过这种方式,您可以保存所有的列表记录,并且只在可以找到匹配的c_profile的地方加入。
发布于 2016-04-12 13:26:47
选择c_profile.c_name,c_profile.logo,c_profile.email,listing.id,listing.title,listing.type,listing.job_desc,listing.c_id,listing.time,listing.vote_up
https://stackoverflow.com/questions/36574105
复制相似问题