我有两张桌子A和B
A B
id name age id registered
--- ----- ---- --- -----------
1 abc 19 2 yes
2 xyz 20
3 qwe 34
4 asdf 43
我想从表A中选择已注册的所有字段。即选择数据2 xyz 20 yes
。
如何使用mysql进行操作?
答案 0 :(得分:2)
如果您想要所有表A和B中的值我认为您正在寻找:
select * from TableA left join TableB on TableA.ID=TableB.ID
如果你想要那些只有表B中的记录的人使用:
select * from TableA inner join TableB on TableA.ID=TableB.ID
答案 1 :(得分:1)
你需要一个加入:
SELECT A.id, A.name, A.age
FROM
A INNER JOIN B
ON A.id = B.id
WHERE
B.registered='yes'
或IN子句:
SELECT A.id, A.name, A.age
FROM A
WHERE
A.id IN (SELECT id FROM b WHERE registered='yes')