我有一个像这样的SQL语句:
$sql = "SELECT *, films.category AS filmCategory FROM films LEFT OUTER JOIN items ON items.unique = films.ref ORDER BY unique ASC LIMIT 0, 4";
不起作用。它没有ORDER BY
和LIMIT
部分,如下所示:
$sql = "SELECT *, films.category AS filmCategory FROM films LEFT OUTER JOIN items ON items.unique = films.ref";
我似乎无法找到添加ORDER BY
和LIMIT
的方法来仅获取films
表中的前4个项目。之后,连接部分只能从另一个表中获取这四个项目的更多信息。它是如何以正确的方式完成的?
答案 0 :(得分:2)
如果要限制特定表,则必须使用子查询。
SELECT *, films.category AS filmCategory
FROM (SELECT *
FROM films
ORDER BY ref ASC
LIMIT 4) films
LEFT OUTER JOIN items
ON items.`unique` = films.ref
ORDER BY `unique` ASC