SELECT
句の条件として、別のテーブルから引いてくるような形でEXISTS
を使うことも多いかと思います。そこで、
lang
1SELECT * FROM table_1 WHERE EXISTS(SELECT ??? FROM table_2 WHERE ...)
というような形とした時に、???
には何を書いていますか?
- 具体的な処理をSQLエンジン側に任せる、*
- 「どの列もいらない」ということを明示して、1(もしくは何かしらの定数)
- インデックス使用へと誘導するように、特定の列を入れる
自分としては、「ここでは1行あるかどうか以上の情報はいらない」という意味を込めて、SELECT 1
と書いています。

バッドをするには、ログインかつ
こちらの条件を満たす必要があります。