狠狠色丁香婷婷综合尤物/久久精品综合一区二区三区/中国有色金属学报/国产日韩欧美在线观看 - 国产一区二区三区四区五区tv

LOGO OA教程 ERP教程 模切知識交流 PMS教程 CRM教程 開發(fā)文檔 其他文檔  
 
網(wǎng)站管理員

SQL語句中CASE WHEN的使用實例

admin
2011年5月4日 15:13 本文熱度 2894
SQL中的CASE WHEN語句是經(jīng)常要用到的,下面將結(jié)合實例,為您詳解CASE WHEN語句的使用,供您參考,希望對您學(xué)習(xí)SQL語句能有所幫助。
一張表數(shù)據(jù)如下
1900-1-1 勝
1900-1-1 勝
1900-1-1 負(fù)
1900-1-2 勝
1900-1-2 勝
寫出一條SQL語句,使檢索結(jié)果如下:
          勝  負(fù)
1900-1-1 2   1
1900-1-2 2   0

我隨手建了這樣一個表:

create table test(Date varchar(50) null, Result varchar(50) null)

并將上面的數(shù)據(jù)都插入到表中。

經(jīng)過一番嘗試和修改,終于得到了答案:

select distinct Date,sum(case Result when '勝' then 1 else 0 end) as '勝',sum(case Result when '負(fù)' then 1 else 0 end) as '負(fù)'from testgroup by date

這里我要說的,其實是SQL中case when的用法。它在普通的SQL語句中似乎并不常見,我本人以前也沒在實際項目中使用過。遇到類似問題,往往通過代碼或多條SQL語句實現(xiàn)。或者是如下這種丑陋的SQL,并且還伴隨著很多潛在的BUG(如,當(dāng)沒有‘負(fù)’時)。

select a.date,a.a1 勝,b.b1 負(fù) from 
(select date,count(date) a1 from test where Result ='勝' group by date) a, 
(select date,count(date) b1 from test where Result ='負(fù)' group by date) b 
where a.date=b.date

我們不妨來復(fù)習(xí)一下CASE WHEN的語法。

CASE WHEN有兩種用法,一種是類似上面例子中那樣的簡單CASE函數(shù):

CASE resultWHEN '勝' THEN 1WHEN '負(fù)' THEN 2ELSE 0END

還有一種是CASE搜索函數(shù):

CASE WHEN result='勝' THEN 1     WHEN result='負(fù)' THEN 2ELSE 0END

其中result='勝'可以替換為其他條件表達(dá)式。如果有多個CASE WHEN表達(dá)式符合條件,將只返回第一個符合條件的子句,其余子句將被忽略。

用CASE WHEN語句可以簡化我們平時工作中遇到的很多問題。如性別在表中存的是數(shù)字1、2,但是希望查詢出來男、女時,可以這樣:

select (case Gender when 1 then '男' when 2 then '女' else '其他' end) as Gender from Table1

是不是很強大呢?


該文章在 2024/9/9 9:04:46 編輯過
關(guān)鍵字查詢
相關(guān)文章
正在查詢...
點晴ERP是一款針對中小制造業(yè)的專業(yè)生產(chǎn)管理軟件系統(tǒng),系統(tǒng)成熟度和易用性得到了國內(nèi)大量中小企業(yè)的青睞。
點晴PMS碼頭管理系統(tǒng)主要針對港口碼頭集裝箱與散貨日常運作、調(diào)度、堆場、車隊、財務(wù)費用、相關(guān)報表等業(yè)務(wù)管理,結(jié)合碼頭的業(yè)務(wù)特點,圍繞調(diào)度、堆場作業(yè)而開發(fā)的。集技術(shù)的先進(jìn)性、管理的有效性于一體,是物流碼頭及其他港口類企業(yè)的高效ERP管理信息系統(tǒng)。
點晴WMS倉儲管理系統(tǒng)提供了貨物產(chǎn)品管理,銷售管理,采購管理,倉儲管理,倉庫管理,保質(zhì)期管理,貨位管理,庫位管理,生產(chǎn)管理,WMS管理系統(tǒng),標(biāo)簽打印,條形碼,二維碼管理,批號管理軟件。
點晴免費OA是一款軟件和通用服務(wù)都免費,不限功能、不限時間、不限用戶的免費OA協(xié)同辦公管理系統(tǒng)。
Copyright 2010-2025 ClickSun All Rights Reserved