我需要创建一个 select 语句,该语句需要从其他表列数据中检索数据
例如。
Table1 Table2
id id2
age age2
从表1中选择id,age,其中id=id2
这可能吗?
最佳答案
您可以使用 INNER JOIN
SELECT
T1.id,
T1.age
FROM Table1 AS T1
INNER JOIN Table2 AS T2
ON T1.id = T2.id2
您可以使用 EXISTS
SELECT
T1.id,
T1.age
FROM Table1 AS T1
WHERE EXISTS(
SELECT 1
FROM Table2 AS T2
WHERE T2.id2 = T1.id
);
您可以使用 IN
SELECT
T1.id,
T1.age
FROM Table1 AS T1
WHERE T1.id IN (SELECT T2.id2 FROM Table2 AS T2)
注意:
在工作演示中,输出由两行组成。 tabel1
中有两个条目,table2
中有三个条目。但是在这两个表之间只找到两个匹配条目。这就是输出仅包含两行的原因。
关于mysql - 一个表能否获取其他表列数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38582444/