我遇到了设计正确的SQL查询问题。我已经厌倦了像今天这样一个地狱,已经(即将截止日期)工作超过12个荷鲁斯,并不能找到问题......MySQL:加入两个表
表:
buddies | userid | buddyid
users | id | username
现在,我想做什么: 查询所有用户朋友的表伙伴(当ID = userid OR ID = buddyid时)。没有问题。
问题出现在我尝试加入用户表以获取用户名时,用户名为NULL,找不到原因。
你想帮我吗?
这里的工作查询(但返回空的用户名)
SELECT username
FROM (
`users_buddies`
)
LEFT JOIN `users` ON ('users.id' = 'buddyid'
OR 'users.id' = 'userid')
WHERE `userid` =1
OR `buddyid` =1
预先感谢任何帮助。我确定这是一个小错误(由我引起),但实际上找不到它。花了一个多小时,然后决定问。
问候, 汤姆
http://dev.mysql.com/doc/refman/5.0/en/identifiers.html – 2010-07-02 13:09:16
当然,Naktibalda是对的。 – Tom 2010-07-02 13:15:29
谢谢,jsummers。或许,我认为在这种情况下,最好不要为表名使用保留字。 – 2010-07-02 18:54:24