我有以下工作,
SELECT info1, info2
FROM TableA
WHERE id IN (SELECT xid
FROM TableB
WHERE userid=3 AND active=1)
Run Code Online (Sandbox Code Playgroud)
这工作正常,但TableB我也有一个team列,我想在最外层的选择语句中选择并返回,类似于这个“伪”查询,当然这不起作用:
SELECT info1, info2, team
FROM TableA
WHERE id IN (SELECT xid, team
FROM TableB
WHERE userid=3 AND active=1)
Run Code Online (Sandbox Code Playgroud)
我仔细阅读了一下,认为可能AS会有所帮助,但我不确定。有人可以提出解决方案吗?这甚至可能吗?
这就是JOINs 的用途:
SELECT A.info1,
A.info2,
B.team
FROM TableA A
INNER JOIN TableB B
ON A.id = B.xid
WHERE B.userid = 3
AND B.active=1
;
Run Code Online (Sandbox Code Playgroud)
您可以通过这种方式 JOIN 两个表:
SELECT a.info1, a.info2, b.team
FROM TableA a
JOIN TableB b
ON a.id = b.xid
WHERE b.userid = 3
AND b.active = 1;
Run Code Online (Sandbox Code Playgroud)