MySQL では、ANY および ALL は、サブクエリ内の少なくとも 1 つのレコードまたはすべてのレコードが条件を満たすかどうかを確認します。 ANY は存在を判断するのに適していますが、ALL は一貫性を検証するのに適しています。違いは、ANY が true を返すには条件を満たすレコードを 1 つ見つけるだけでよいのに対し、ALL はすべてのレコードが条件を満たす必要があることです。
#MySQL での ANY と ALL の使用
#概念定義
ANY(サブクエリ)
ALL(サブクエリ)
# #ここで、
subquery
使用方法
ANY
サブクエリに条件を満たすレコードがあるかどうかを確認します。
(false) を返します。
一般的に、特定の要素がコレクション内に存在するかどうかを判断するために使用されます。
<code>SELECT CASE WHEN ANY(SELECT 1 FROM orders WHERE product_id = 123) THEN 'Product exists' ELSE 'Product does not exist' END;</code>
サブクエリ内のすべてのレコードが条件を満たしていることを確認します。 。
(false) を返します。
コレクション内のすべての要素が特定の基準を満たしていることを確認するために一般的に使用されます。
<code>SELECT CASE WHEN ALL(SELECT price FROM orders WHERE product_id = 123) > 50 THEN 'All products are expensive' ELSE 'Some products are not expensive' END;</code>
任意
サブクエリはブール値 (true/false) を返す必要があります。
ALL を使用する場合は、サブクエリのパフォーマンスへの影響に注意する必要があります。
以上がmysql での any および all の使用法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。