mysql での any および all の使用法

下次还敢
リリース: 2024-04-27 08:12:21
オリジナル
588 人が閲覧しました

MySQL では、ANY および ALL は、サブクエリ内の少なくとも 1 つのレコードまたはすべてのレコードが条件を満たすかどうかを確認します。 ANY は存在を判断するのに適していますが、ALL は一貫性を検証するのに適しています。違いは、ANY が true を返すには条件を満たすレコードを 1 つ見つけるだけでよいのに対し、ALL はすべてのレコードが条件を満たす必要があることです。

mysql での any および all の使用法

#MySQL での ANY と ALL の使用

#概念定義

  • ANY: サブクエリ内の少なくとも 1 つのレコードが指定された条件を満たしていることを確認します。
  • ALL: サブクエリ内のすべてのレコードが指定された条件を満たしていることを確認します。
#構文

ANY(サブクエリ)

ALL(サブクエリ)
# #ここで、subquery

はブール値を返すサブクエリです。

使用方法

ANY

サブクエリに条件を満たすレコードがあるかどうかを確認します。

    一致するレコードが見つかった場合は
  • 1
  • (true) を返し、それ以外の場合は
  • 0 (false) を返します。 一般的に、特定の要素がコレクション内に存在するかどうかを判断するために使用されます。
  • 例:

<code>SELECT CASE
  WHEN ANY(SELECT 1 FROM orders WHERE product_id = 123)
  THEN 'Product exists'
  ELSE 'Product does not exist'
END;</code>
ログイン後にコピー
ALL

サブクエリ内のすべてのレコードが条件を満たしていることを確認します。 。

    すべてのレコードが条件を満たしている場合は
  • 1
  • (true) を返し、それ以外の場合は
  • 0 (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>
ログイン後にコピー
違い

任意
    1 つだけ見つけてください条件を満たすレコードは true を返しますが、
  • ALL では、true を返す前にすべてのレコードが条件を満たす必要があります。 ANY
  • は存在の確認によく使用され、
  • ALL は一貫性の検証によく使用されます。

サブクエリはブール値 (true/false) を返す必要があります。

    空のサブクエリは
  • NULL
  • の結果を返します。
  • ALL
  • および
  • ANY を使用する場合は、サブクエリのパフォーマンスへの影響に注意する必要があります。

以上がmysql での any および all の使用法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

関連ラベル:
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
最新の問題
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート