【发布时间】:2016-01-13 17:57:08
【问题描述】:
为什么下面的 sql 查询不返回名为 cmets 的第二个表的所有列,而只返回 wp_users 表的 ID 列?
SELECT ID FROM wp_users
INNER JOIN (select * from wp_comments) as comments
ON ID = comments.user_id
WHERE comments.comment_type = 'user_course'
如果我将查询更改为以下语句,它应该可以正常工作,这意味着第一个和第二个表的所有列当然都匹配 WHERE 条件。
SELECT * FROM wp_users
INNER JOIN (select * from wp_comments) as comments
ON ID = comments.user_id
WHERE comments.comment_type = 'user_course'
【问题讨论】:
-
SELECT ID FROM ... 按照您的要求进行操作。如果您想要其他任何东西,您也必须提出要求。
-
select ID, comments.* from... -
我指的是第一个查询示例。 ID = 返回正常,但我没有从第二个表中获得“select * from wp_cmets”的结果。为什么?
-
@Maverick 我在回答中添加了解释。看看吧。
标签: php mysql select inner-join