[英]LEFT JOIN and WHERE causing error
I have a nested mysql_query.我有一个嵌套的 mysql_query。
$resultSub = mysql_query("SELECT *
FROM ensembles
WHERE en_name = $name
LEFT JOIN ensemble_names on ensembles.en_name = ensemble_names.en_nm_ID
LEFT JOIN students on ensembles.en_stu = students.s_ID
LEFT JOIN part_names on ensembles.en_part = part_names.p_nm_ID
ORDER BY $sort $orderBy");
The query works fine without the WHERE clause, which I thought may be filtering out rows for the LEFT JOIN
command, but that's not the case.如果没有 WHERE 子句,查询可以正常工作,我认为这可能会过滤掉
LEFT JOIN
命令的行,但事实并非如此。
The WHERE clause should be placed after the LEFT JOINs: WHERE 子句应放在 LEFT JOIN 之后:
$resultSub = mysql_query("SELECT *
FROM ensembles
LEFT JOIN ensemble_names on ensembles.en_name = ensemble_names.en_nm_ID
LEFT JOIN students on ensembles.en_stu = students.s_ID
LEFT JOIN part_names on ensembles.en_part = part_names.p_nm_ID
WHERE en_name = $name
ORDER BY $sort $orderBy");
Well, you put the WHERE
clause in the wrong place.好吧,你把
WHERE
子句放在了错误的地方。
Read the documentation .阅读文档。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.