如何进行这个特定的MySQL查询?

时间:2012-09-23 19:17:28

标签: mysql sql

我有两个表,usersmessages

users包含字段userId(int)和username(字符串)和 messages的字段为userId(int)和message

我有用户名,并希望获取与该用户名userId相关的所有消息。

在这种情况下联接功能是否有效(如果是,如何?),还是我必须进行两次单独的查询?

2 个答案:

答案 0 :(得分:5)

SELECT       m.*
FROM         messages m
  INNER JOIN users u
  ON         m.userId = u.userId
WHERE        u.username = 'UsernameHere';

使用INNER JOIN引用user表格中的messages表格(通过userId列匹配[引用])

可以在此处找到查询示例:http://www.sqlfiddle.com/#!8/bc3ce/3/0

答案 1 :(得分:3)

SELECT U.userId, M.message
FROM users AS U INNER JOIN messages AS M ON U.userId = M.userId
WHERE U.username = 'UserName'

只需将您想要的用户名插入WHERE子句即可。