ANY と SOME はどちらも、サブクエリ行とメインクエリ行を照合するために使用される SQL の述語です。違いは次のとおりです。 ANY: 返された行数に関係なく、サブクエリに一致する行があるかどうかを確認します。 SOME: サブクエリに少なくとも 1 つの一致する行があるかどうかを確認しますが、返される行の数は気にしません。
SQLにおけるANYとSOMEの違い
SQLクエリでは、ANYとSOMEは、サブクエリによって返された行の一部または一部を、メインクエリによって返された行と照合するために使用される述語です。ただし、使用法とセマンティクスには微妙な違いがあります。
使用法
セマンティクス
例
ANY
<code class="sql">SELECT * FROM employees WHERE salary > ANY (SELECT salary FROM managers);</code>
このクエリは、どのマネージャーよりも高い給与を持つ従業員レコードを返します。少なくとも 1 人のマネージャーの給与が従業員の給与より大きい場合、ANY 条件は満たされます。
SOME
<code class="sql">SELECT * FROM customers WHERE city = SOME (SELECT city FROM orders);</code>
このクエリは、注文で指定された都市の少なくとも 1 つに住んでいる顧客の記録を返します。注文テーブル内の少なくとも 1 つの注文の都市が顧客の都市と一致する場合、SOME 条件が満たされます。
概要
以上がSQLのanyとsomeの違いの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。