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

SQL SELECT ステートメントで条件付きロジック (IF-THEN) を使用するにはどうすればよいですか?

Mary-Kate Olsen
Mary-Kate Olsenオリジナル
2025-01-22 15:11:09705ブラウズ

How Can I Use Conditional Logic (IF-THEN) in SQL SELECT Statements?

SQL SELECT ステートメントの条件ロジック: CASE ステートメント

SQL は CASE ステートメントを使用して SELECT ステートメント内の条件付きロジックを処理し、従来の IF ステートメントに代わる強力な代替手段を提供します。

CASE を使用した条件付きロジックの実装

CASE ステートメントの基本構造は次のとおりです:

<code class="language-sql">CASE
    WHEN condition1 THEN result1
    WHEN condition2 THEN result2
    ...
    ELSE default_result
END</code>

説明のために、IF...THEN 構造をミラーリングするシナリオを考えてみましょう。

<code class="language-sql">SELECT
    CASE
        WHEN Obsolete = 'N' OR InStock = 'Y' THEN 1
        ELSE 0
    END AS Saleable,
    *
FROM Product;</code>

さらなる考慮事項

  • データ型変換: CAST 演算子を使用すると、必要に応じて CASE ステートメントの出力をブール (ビット) データ型に明示的に変換できます。
  • ネストされた CASE ステートメントと集計関数: CASE ステートメントはネストをサポートしており、複雑な条件付き集計の集計関数内に効果的に統合できます。
  • IIF ステートメント (SQL Server 2012 以降): SQL Server 2012 では IIF ステートメントが導入され、条件付きロジックを表現するための追加オプションが提供されました。

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

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。