首頁 > 資料庫 > mysql教程 > 如何在 SQL SELECT 語句中實作 IF-THEN 邏輯?

如何在 SQL SELECT 語句中實作 IF-THEN 邏輯?

Barbara Streisand
發布: 2025-01-22 15:27:09
原創
438 人瀏覽過

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

在SQL SELECT語句中實作IF-THEN邏輯

SQL程式設計中一個常見的需求是執行條件檢查,並根據結果傳回不同的結果。本文將探討如何在SQL SELECT語句中實作IF...THEN邏輯。

使用CASE語句

CASE語句相當於SQL中的IF語句。它允許您指定多個條件和相應的操作。

<code class="language-sql">SELECT CASE
    WHEN condition1 THEN result1
    WHEN condition2 THEN result2
    ELSE result3
END AS conditional_column, *
FROM table_name</code>
登入後複製

例如,要依照產品的Obsolete和InStock值檢查產品是否可銷售:

<code class="language-sql">SELECT CAST(
    CASE
        WHEN Obsolete = 'N' OR InStock = 'Y'
        THEN 1
        ELSE 0
    END AS bit) AS Saleable, *
FROM Product</code>
登入後複製

使用IIF語句 (SQL Server 2012以上)

SQL Server 2012中所引入的IIF語句簡化了條件語句的語法。其格式如下:

<code class="language-sql">SELECT IIF(condition, result_if_true, result_if_false) AS conditional_column, *
FROM table_name</code>
登入後複製

上面的範例可以使用IIF語句改寫為:

<code class="language-sql">SELECT IIF(Obsolete = 'N' OR InStock = 'Y', 1, 0) AS Saleable, *
FROM Product</code>
登入後複製

其他說明

  • CASE語句可以嵌套以處理更複雜的條件。
  • CAST運算子可以用來將結果轉換為特定資料類型,例如布林型。
  • 巢狀的CASE語句和IIF語句可以包含在聚合函數中。

以上是如何在 SQL SELECT 語句中實作 IF-THEN 邏輯?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
作者最新文章
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板