SUBQUERY

1438 ワード

定義#テイギ#


SUBQUERYはSQL文で指定された最下位SELECTです.
例:
SELECT * FROM players WHERE playerID = 'strevelun';
PlayerIDがstrevelunのコードのみがPlayersテーブルからすべてのカラム情報をインポートして出力することができ、ハードコーディングではなく、その部分に条件に合ったデータを柔軟にインポートさせると、以下のように記述できます.
SELECT *
FROM players
WHERE playerID = (SELECT TOP 1 playerID FROM salaries);

すなわち,カッコ内のSELECT文はSUBQUERYであり,pairesテーブルからPlayerIDを選択し,ResultsのようにPlayerIDをインポートして代入する.


複数行=をインポートした場合はINを使用します.
これにより、20個のPlayerID列の行をインポートし、PlayersテーブルにインポートしたPlayerIDを見つけて、すべての列を出力できます.

SUBQUERYはWHEREで最も多く使われていますが、他の部分でも利用できます.
たとえばINSERTは、給与表から最高の年収を引き出して、ferlandという人に年収を設定する場合にも使えます.
これで結果を確認できます.

相関サブクエリ


クラスで紹介される相互依存サブクエリには,EXISTSとNOT EXISTSの2種類がある.
EXISTSはサブクエリにおいて、条件を満たすコンテンツが存在する場合、結果をユーザに送信します.そうでない場合、何も出力されません.
関連サブクエリとは、メインクエリ(プレーヤ)の一列(プレーヤ.playerID)がサブクエリに使用される条件(WHERE batingpost.playerID=player.player ID)であり、サブクエリの結果がメインクエリとして返されて実行される.したがって、サブクエリを実行するだけでエラーが発生します.