2011-09-27 71 views
0
SELECT MsgID, Name FROM tbl_message INNER JOIN tbl_user on tbl_message.UserID = tbl_user.UserID WHERE OrgID ='1' order by MsgID 

我有一个消息表内加入帮助在MySQL

msgid msg userid Orgid 
24  Hi  2  1 
25  hsa 4  1 

用户表

userid  Name Orgid 
2   cas  1 
4   asd  1 

我想从用户表的名称。我正在做内部连接来获取它,但我得到错误。查询有什么问题。错误是OrgID不明确

+0

是什么错误说? –

回答

1

您可以使用给定的查询:

SELECT message.msg, message.msgid, message.userid, 
message.orgid, user.username, user.orgid 
FROM user INNER JOIN message 
ON user.userid = message.userid 
WHERE message.orgid='1' 
order by message.msgid 

我希望这将帮助你。

1

如果您告诉我们错误是什么,这将有所帮助。查看您的查询,我可以看到两个错误:

  • SELECT MsgID之后有一个流浪逗号应该被删除。
  • 该声明的WHERE OrganisationID ='1'部分似乎引用了不存在的列OrganisationID。也许把它改成Orgid
0
SELECT MsgID FROM tbl_message INNER JOIN tbl_user on tbl_message.UserID = tbl_user.UserID WHERE OrgID ='1' order by MsgID 
0

下面的代码将工作,在你的代码ORGID在条件ambigious

SELECT 
    msgid 
FROM 
    tbl_message 
INNER JOIN tbl_user ON tbl_message.UserID = tbl_user.UserID 
WHERE 
    tbl_message.Orgid = 1 
    AND tbl_user.Orgid = 1 
ORDER BY msgid