mysql case when 用法


MySQL 的 case when 的語法有兩種:

    1. 簡單函數 
      CASE [col_name] WHEN [value1] THEN [result1]…ELSE [default] END
    2. 搜索函數 
      CASE WHEN [expr] THEN [result1]…ELSE [default] END

區別:

    搜索函數可以寫判斷,並且搜索函數只會返回第一個符合條件的值,其他case被忽略

   

以下是示例,查看近7天的訂單:

SELECT
    `order_id` AS "訂單號",
    price` AS "實際金額",
    CASE status
WHEN 1 THEN
    '已退貨'
WHEN 3 THEN
    '無效'
WHEN 15 THEN
    '待付款'
WHEN 16 THEN
    '已付款'
WHEN 17 THEN
    '已完成'
ELSE
    '其它'
END AS "訂單狀態",
 DATE_FORMAT(order_time, '%Y-%m-%d %H:%i:%s') AS "下單時間"
FROM
    order_table
WHERE
    order_time BETWEEN DATE_SUB(CURDATE(), INTERVAL 7 DAY)
AND now()
ORDER BY
    order_time ASC


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM