SQL 中的條件值選擇 SELECT
使用 IF
SQL 的 IF
函數對於根據條件動態選擇輸出值至關重要。 一個常見的用例涉及根據同一行中的條件從不同列中選擇值。
想像一個「報告」表,其中包含「id」和「amount」列,以及一個「type」列(「P」表示正數,「N」表示負數)。若要顯示根據“類型”調整的“金額”,請使用 IF
函數:
<code class="language-sql">SELECT id, IF(type = 'P', amount, amount * -1) AS amount FROM report;</code>
此查詢使用 IF
檢查「type」是否為「P」。如果為真,則傳回「金額」;否則,它會傳回「金額」的負數。
處理潛在的NULL
值需要IFNULL
:
<code class="language-sql">SELECT id, IF(type = 'P', IFNULL(amount,0), IFNULL(amount,0) * -1) AS amount FROM report;</code>
IFNULL
確保如果「amount」為 NULL
,則使用 0。 這可以防止 NULL
結果並保持資料完整性。 嵌套的 IFNULL
可以處理正面和負面的情況。
IF
語句中的 SELECT
函數提供了根據行特定條件有條件地從各個列中選擇值的功能,顯著提高了資料檢索的準確性和效率。
以上是如何在`SELECT`語句中使用SQL的`IF`函數進行條件值選擇?的詳細內容。更多資訊請關注PHP中文網其他相關文章!