0

MYSQL データベースを使用しています。

私は次のものを持っています:

tbl1

ID(p) | FID(p)
1     7
2     7
2     8
7     2
3     9

tbl2

DATA(p) | ID(f)
AAA      7
BBB      7
CCC      8

tbl1 (7, 8) から ID = 2 のすべての FID を選択する必要があります。次に、ID = 最初のクエリの結果 (AAA、BBB、CCC を返す) のすべてのデータを選択する必要があります。

これは 1 回または 2 回のクエリで実行できますか? 適切なオペレーターの方向に私を向けることができれば、私はそれを解決することができます.

ありがとう!

4

4 に答える 4

4
SELECT b.DATA 
FROM tbl1 a
LEFT JOIN tbl2 b ON b.ID = a.FID
WHERE a.ID = 2

戻ります:

AAA
BBB
CCC

于 2012-09-17T21:46:36.667 に答える
2

右の演算子はJOINです。幸運を。

于 2012-09-17T21:45:38.937 に答える
0

何に参加する必要があるのか​​完全にはわかりませんが、次のようなものです。

SELECT * FROM tbl2 INNER JOIN (SELECT * FROM tbl1 WHERE ID=2) a ON a.FID=tbl2.ID
于 2012-09-17T21:46:43.207 に答える
0

「INNERJOIN」を使用して、複数のテーブルから複数のフィールドを選択できます。

SELECT T1.FID, T2.DATA
FROM tbl1 T1 
WHERE T1.ID = 2
INNER JOIN tbl2 T2
ON T1.ID = T2.ID
于 2012-09-17T21:49:31.280 に答える