LEFT JOIN"不是唯一的表/别名"

时间:2015-05-10 15:16:45

标签: mysql left-join

我想用我的数据库中的一个查询加载所有帖子及其标签。
我认为LEFT JOIN是合适的,你还有其他建议吗?
这是我的SQL查询:

SELECT * FROM posts, tags, tags_map 
LEFT JOIN posts on posts.cid = tags_map.pid 
WHERE tags.tag_id = tags_map.tid

它显示错误Not unique table/alias: 'posts'哪里错了,因为我指向一个名为' posts'的表,有什么想法吗?

1 个答案:

答案 0 :(得分:1)

不要混合旧式和新式连接。实际上,始终使用显式join语法。切勿在{{1​​}}子句中使用逗号:

from

我不确定SELECT * FROM posts p JOIN tags_map tm ON p.cid = tm.pid JOIN tags t ON t.tag_id = tm.tid; 的用途。如果您确实需要它,请将其添加到此版本的查询中。