ホームページ > データベース > mysql チュートリアル > SQL SELECT ステートメントに IF-THEN ロジックを実装するにはどうすればよいですか?

SQL SELECT ステートメントに IF-THEN ロジックを実装するにはどうすればよいですか?

Barbara Streisand
リリース: 2025-01-22 15:27:09
オリジナル
506 人が閲覧しました

How Can I Implement IF-THEN Logic in SQL SELECT Statements?

SQL SELECT ステートメントに IF-THEN ロジックを実装する

SQL プログラミングにおける一般的なニーズは、条件チェックを実行し、その結果に基づいて異なる結果を返すことです。この記事では、SQL SELECT ステートメントに IF...THEN ロジックを実装する方法を説明します。

CASE ステートメントを使用します

CASE ステートメントは SQL の IF ステートメントに相当します。複数の条件と対応するアクションを指定できます。

SELECT CASE
    WHEN condition1 THEN result1
    WHEN condition2 THEN result2
    ELSE result3
END AS conditional_column, *
FROM table_name
ログイン後にコピー

たとえば、Obsolete と InStock の値に基づいて製品が販売可能かどうかを確認するには:

SELECT CAST(
    CASE
        WHEN Obsolete = 'N' OR InStock = 'Y'
        THEN 1
        ELSE 0
    END AS bit) AS Saleable, *
FROM Product
ログイン後にコピー

IIF ステートメントを使用する (SQL Server 2012 以降)

SQL Server 2012 で導入された IIF ステートメントは、条件ステートメントの構文を簡素化します。その形式は次のとおりです:

SELECT IIF(condition, result_if_true, result_if_false) AS conditional_column, *
FROM table_name
ログイン後にコピー

上記の例は、IIF ステートメントを使用して次のように書き直すことができます。

SELECT IIF(Obsolete = 'N' OR InStock = 'Y', 1, 0) AS Saleable, *
FROM Product
ログイン後にコピー

その他の指示

  • CASE ステートメントをネストして、より複雑な条件を処理できます。
  • CAST 演算子を使用して、結果をブール値などの特定のデータ型に変換できます。
  • ネストされた CASE ステートメントと IIF ステートメントは、集計関数に含めることができます。

以上がSQL SELECT ステートメントに IF-THEN ロジックを実装するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

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