![](/img/trans.png)
[英]How do I select data from one table where column values from that table match the conatenated column values of another table?
[英]MYSQL How do I select data from one table only where column values from that table match the column values of another table?
我有兩張桌子。 我想從表1中獲取UID,其中兩個表的主題列都匹配。
Table 1
UID SubjectA
1 Cows
2 Chickens
3 Mice
4 Rabbits
5 Cows
Table 2
Name SubjectB
A Cows
B Cows
C Cows
D Cows
E Mice
預期結果*
提取UID:1、3、5。
我不太了解聯接和工會。 兩者似乎都結合了兩個表。 正確的做法是什么?
做這件事有很多種方法...
首先,我建議使用exists
:
SELECT
UID
FROM
Table1
WHERE EXISTS (
SELECT 1
FROM Table2
WHERE SubjectB = SubjectA
)
或者,您可以使用join
和distinct
:
SELECT DISTINCT
UID
FROM
Table1 JOIN
Table2 ON SubjectB = SubjectA
最后,您可以in
中使用:
SELECT
UID
FROM
Table1
WHERE SubjectA IN (
SELECT SubjectB
FROM Table2
)
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.