2016-07-26 1 views

答えて

4

あなたはあなたが使用することができますINNER JOIN

SELECT 
T1.id, 
T1.age 
FROM Table1 AS T1 
INNER JOIN Table2 AS T2 
ON T1.id = T2.id2 

DEMO using INNER JOIN

を使用することができますEXISTS

SELECT 
T1.id, 
T1.age 
FROM Table1 AS T1 
WHERE EXISTS(
    SELECT 1 
    FROM Table2 AS T2 
    WHERE T2.id2 = T1.id 
); 
出力は2行で構成され、デモ作業で

あなたはIN

SELECT 
T1.id, 
T1.age 
FROM Table1 AS T1 
WHERE T1.id IN (SELECT T2.id2 FROM Table2 AS T2) 

注意を使用することができます。 tabel1には2つのエントリがあり、table2には3つのエントリがあります。しかし、これら2つのテーブルの間には一致するエントリが2つしかありません。そのため、出力は2行のみで構成されています。

0

はいできます。これはJOINと呼ばれ、いくつかのタイプのJOINがあります。私はあなたがそれらをSQL JOINsで読むことをお勧めします。

0
SELECT id ,age 
FROM TABLE 1 
WHERE id IN (SELECT id2 FROM TABLE2); 

OR

SELECT id ,age 
FROM TABLE1 , TABLE2 
WHERE id = id2 ; 

OR

SELECT id ,age 
FROM TABLE 1 , (SELECT id2 FROM TABLE2) TBL2 
WHERE id = TBL2.id2 ; 
関連する問題