【发布时间】:2017-03-28 03:30:54
【问题描述】:
我在 MYSQL 中有一个查询
SELECT grand.user_id,grand.package_id,MAX(grand.grand_level) AS level,pam.original_title,um.name
FROM grand_score_master AS grand
LEFT JOIN package_master AS pam ON pam.id = grand.package_id
LEFT JOIN user_master AS um ON um.id = grand.user_id
WHERE grand.package_id='d47kndffqc' AND grand.user_id='CBS_00001'
因此,如果 WHERE 子句匹配,则结果符合预期。
但是当 WHERE 子句不匹配时,我希望 0 results 但 mysql 给了我
如何在 LEFT JOIN / INNER JOIN 中获得“0 个结果”。
我将在 PHP 中使用此查询来处理 AJAX 请求。
【问题讨论】:
-
当您离开联接时,您是在说“从表 a 中取出所有列,并从表 b 中附加相关列”。任何具有与 where 匹配的
package_id或user_id的内容(但与user_master或package_master匹配的任何内容都将为空。 -
它是空结果集,还是您从数据库中获取了一些行,但所有值都为空?我建议您执行相同的查询,但使用
*而不是字段。
标签: mysql