我有 3 张桌子可供选择。其中 2 个始终是必需的(tbl_notes
, tbl_clients
),而第 3 个是可选的(tbl_notes_categories
)。
我一直LEFT JOIN
在我的查询中使用与主表相关的可疑记录。
但是我没有通过下面的查询得到任何结果。
有人会指出我如何错误地使用 LEFT JOIN 吗?
SELECT n.*, c.clientname, nc.notecategoryname
FROM tbl_notes n, tbl_clients c
LEFT JOIN tbl_notes_categories nc ON n.categoryid = nc.categoryid
WHERE n.clientid = c.clientid
AND c.clientid = 12345
ORDER BY n.dateinserted DESC
事实上,我得到了一个 sql 错误。 #1054 - 'on 子句'中的未知列 'n.categoryid'
categoryid
确实存在于tbl_notes
我可能需要重新了解 JOINS 是如何工作的。我猜我之前不能有 2 个数据库表的 LEFT JOIN 吗?
附带说明一下,我可以预见会有多个必需表和几个可选表的时候。(在这种情况下tbl_notes_categories
是可选的)