1

2つのSQLクエリがあります。1つは結果を取得した後にもう1つを使用します。

SELECT users.data from users WHERE users.data2 = value

SELECT mods.data FROM mods WHERE mods.data2 = (result of previous query)

これらのステートメントをどのように組み合わせるのですか?同様の質問がありますが、私はSQLに不慣れで、それらを理解していません。

4

3 に答える 3

4

それらを結合する最も簡単な方法は、IN演算子を使用することです。

SELECT mods.data FROM mods WHERE mods.data2 IN 
    (SELECT users.data from users WHERE users.data2 = value)

しかし、他にもたくさんあります...

たとえば、次のように参加できます。

SELECT mods.data 
FROM mods 
JOIN users ON mods.data2 = users.data
WHERE users.data2 = value

データの構造によっては、これらによって異なる出力が生成される場合があります。

于 2012-08-09T16:48:16.313 に答える
2
SELECT m.data 
FROM mods m
INNER JOIN users u ON m.data2 = u.data
WHERE u.data2 = value
于 2012-08-09T16:48:19.290 に答える
0

正確なRDBMSに応じて、最新のMS SQLバージョンで使用可能な共通テーブル式(CTE)を使用できます。

于 2012-08-09T16:56:21.877 に答える