【发布时间】:2015-01-28 07:38:19
【问题描述】:
我有 2 个表 table1 包含一个用户 ID 和一个 postid。表 2 包含一个用户 ID 和一个用户名。我想返回具有某个 postid 的所有用户 ID,然后使用这些用户 ID 查询 table2 并获取用户名。
有没有办法解决这个问题?我已经尝试过 join 语句,它似乎不起作用
【问题讨论】:
-
添加您在问题中尝试过的查询
标签: mysql nested-queries
我有 2 个表 table1 包含一个用户 ID 和一个 postid。表 2 包含一个用户 ID 和一个用户名。我想返回具有某个 postid 的所有用户 ID,然后使用这些用户 ID 查询 table2 并获取用户名。
有没有办法解决这个问题?我已经尝试过 join 语句,它似乎不起作用
【问题讨论】:
标签: mysql nested-queries
使用 IN 函数:
select username, userid from `table2` where userid in (select userid from `table` where postid = <condition>)
【讨论】:
SELECT A.postid, A.userid, B.username FROM
tableA AS A JOIN tableB AS B ON A.userid=B.userid
select post id, user id from tableA 用户名 from tableB。当 tableA 的 userid 等于 tableB 的 userid 时,加入这 2 个不同的表列。
【讨论】:
select t1.postid, t1.userid, t2.username
from table1 t2
left join table1 t2 on t1.userid = t2.userid
where t1.postid = <your postid>
【讨论】:
在公共列上加入表格
select t1.postid, t1.userid, t2.username
from table1 t1
join table2 t2 on t1.userid = t2.userid
where t1.postid = 2
【讨论】: