在最外层选择的嵌套选择中返回信息

Pix*_*xel 3 mysql

我有以下工作,

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会有所帮助,但我不确定。有人可以提出解决方案吗?这甚至可能吗?

Lam*_*mak 8

这就是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)


McN*_*ets 5

您可以通过这种方式 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)