SQL CASE


SQL UNION
SQL UNION ALL
SQL INTERSECT
SQL MINUS
SQL 子查詢
SQL EXISTS
SQL CASE
SQL 算排名
SQL 算中位數
SQL 算累積總計
SQL 算總合百分比
SQL 算累積總合百分比



網站導引
其他資源


CASE 是 SQL 用來做為 if-then-else 之類邏輯的關鍵字。 CASE 的語法如下:

SELECT CASE ("欄位名")
  WHEN "條件1" THEN "結果1"
  WHEN "條件2" THEN "結果2"
  ...
  [ELSE "結果N"]
  END
FROM "表格名"

"條件" 可以是一個數值或是公式。 ELSE 子句則並不是必須的。

在我們的 Store_Information

Store_Information 表格
store_name Sales Date
Los Angeles $1500 Jan-05-1999
San Diego $250 Jan-07-1999
San Francisco $300 Jan-08-1999
Boston $700 Jan-08-1999

若我們要將 'Los Angeles' 的 Sales 數值乘以2,以及將 'San Diego' 的 Sales 數值乘以1.5,我們就鍵入以下的 SQL:

SELECT store_name, CASE store_name
  WHEN 'Los Angeles' THEN Sales * 2
  WHEN 'San Diego' THEN Sales * 1.5
  ELSE Sales
  END
"New Sales",
Date
FROM Store_Information

"New Sales" 是用到 CASE 那個欄位的欄位名。

結果:

store_name New Sales Date
Los Angeles $3000 Jan-05-1999
San Diego $375 Jan-07-1999
San Francisco $300 Jan-08-1999
Boston $700 Jan-08-1999


下一頁:SQL 排名

網站導引   |   其他資源


Copyright 1999-2009   1keydata.com.   版權所有