當前位置:首頁 » 編程語言 » excelsqlcasewhen
擴展閱讀
webinf下怎麼引入js 2023-08-31 21:54:13
堡壘機怎麼打開web 2023-08-31 21:54:11

excelsqlcasewhen

發布時間: 2022-07-19 14:48:03

1. sql中case when的用法

CASE
WHEN要麼是查詢條件要麼是查詢結構,表名逗號後面沒用,語法不對

2. excel通過Microsoft query連接my sql數據,sql語句能使用case when then函數或iif函數嗎

else '現金' 這個後面加個End 變成else '現金' end)

3. sql 的case when 語句

把括弧去掉就好了。

下面是case的兩種用法,可以看下 :

1. 使用帶有 CASE 簡單表達式的 SELECT 語句。

在 SELECT 語句中,CASE 簡單表達式只能用於等同性檢查,而不進行其他比較。下面的示例使用 CASE 表達式更改產品系列類別的顯示,以使這些類別更易於理解。

USE AdventureWorks2008R2;

GO

SELECT ProctNumber, Category =

CASE ProctLine

WHEN 'R' THEN 'Road'

WHEN 'M' THEN 'Mountain'

WHEN 'T' THEN 'Touring'

WHEN 'S' THEN 'Other sale items'

ELSE 'Not for sale'

END,

Name

FROM Proction.Proct

ORDER BY ProctNumber;

GO

2. 使用帶有 CASE 搜索表達式的 SELECT 語句

在 SELECT 語句中,CASE 搜索表達式允許根據比較值替換結果集中的值。下面的示例根據產品的價格範圍將標價顯示為文本注釋。

USE AdventureWorks2008R2;

GO

SELECT ProctNumber, Name, 'Price Range' =

CASE

WHEN ListPrice = 0 THEN 'Mfg item - not for resale'

WHEN ListPrice < 50 THEN 'Under $50'

WHEN ListPrice >= 50 and ListPrice < 250 THEN 'Under $250'

WHEN ListPrice >= 250 and ListPrice < 1000 THEN 'Under $1000'

ELSE 'Over $1000'

END

FROM Proction.Proct

ORDER BY ProctNumber ;

GO

4. SQL中CASE WHEN THEN的用法

selectcasewhenage<30thenN'青年'whenagebetween30and49thenN'中年'elseN'老年'endas[年齡段],count(name)as[數目]fromtable
groupbycasewhenage<30thenN'青年'whenagebetween30and49thenN'中年'elseN'老年'end

5. sql case when怎麼用

case when 0 then 『是』when 1 then 『否』;一般情況下在查詢語句中用,根居不同的數據結果查詢轉換成自己想要的類型;
樓主的情況,建議用存儲過程,寫if語法來做處理

6. SQL case when 語句

求總發卡數和總制卡數和發卡正式卡數、發卡臨時卡數、發卡正式卡數,制卡臨時卡數、制卡正式卡數(如Excel中所示)求詳細SQL語句。

--創建測試表
IFEXISTS(SELECT*FROMsys.objectsWHEREobject_id=OBJECT_ID(N'[dbo].[TB]')ANDtypein(N'U'))
DROPTABLE[dbo].[TB1]
GO
CREATETABLE[dbo].[TB1](
[卡狀態][nvarchar](20)NULL,
[卡類型][nvarchar](50)NULL,
)ON[PRIMARY]
GO

--插入測試數據
INSERTINTO[TB1]([卡狀態],[卡類型])
SELECTN'發卡',N'正式卡'UNIONALL
SELECTN'發卡',N'正式卡'UNIONALL
SELECTN'發卡',N'臨式卡'UNIONALL
SELECTN'制卡',N'臨式卡'UNIONALL
SELECTN'制卡',N'正式卡'
GO

--靜態拼接行轉列(糾正簡化一下)
SELECT卡狀態+'數'AS卡狀態,
COUNT(1)AS總數,
SUM(CASEWHEN卡類型='正式卡'THEN1
ELSE0
END)AS正式卡,
SUM(CASEWHEN卡類型='臨式卡'THEN1
ELSE0
END)AS臨式卡
FROMTB1
GROUPBY卡狀態
GO

--輸出結果:

7. sql 中 case when 語法

case具有兩種格式。簡單case函數和case搜索函數。
--簡單case函數
case sex
when '1' then '男'
when '2' then '女'
else '其他' end
--case搜索函數
case when sex = '1' then '男'
when sex = '2' then '女'
else '其他' end
這兩種方式,可以實現相同的功能。簡單case函數的寫法相對比較簡潔,但是和case搜索函數相比,功能方面會有些限制,比如寫判定式。
還有一個需要注重的問題,case函數只返回第一個符合條件的值,剩下的case部分將會被自動忽略。

--比如說,下面這段sql,你永遠無法得到「第二類」這個結果
case when col_1 in ( 'a', 'b') then '第一類'
when col_1 in ('a') then '第二類'
else'其他' end

8. 你好,excel問題求助。請在EXCEL中用SQL語句實現結果,具體請參考圖片附

用case when 結構就可以實現。
select case aa when 'A' then '是' when 'B' then '否' when 'C' then '非' when 'D' then '是' when 'E' then '非' when 'F' then '非' else '' end case from table1

9. 關於使用sql語句sum(case when……)來實現分類匯總功能

有兩處有筆誤,如果結果不同的話,需要檢查一下,先對比下總金額,再對比各個的銷售額,再檢查姓名是否完全一致,EXCEL中經常有前後空格或是不容易顯示出來的字元會有影響,用select 月份,姓名,sum(銷售數量*產品單價) from 表格 group by 月份,姓名

例如:

select

月份,

sum(casewhen銷售人員='姓名1'then銷售數量*產品單價else0end)as姓名1銷售額,

sum(casewhen銷售人員='姓名2'then銷售數量*產品單價else0end)as姓名1銷售額,

sum(casewhen銷售人員='姓名3'then銷售數量*產品單價else0end)as姓名1銷售額

from表格

groupby月份,銷售人員

(9)excelsqlcasewhen擴展閱讀:

注意事項

case when有用兩種用法如下:

用法一:

CASE case_value

WHEN when_value THEN statement_list

[WHEN when_value THEN statement_list] ...

[ELSE statement_list]

END CASE

用法二:

CASE

WHEN search_condition THEN statement_list

[WHEN search_condition THEN statement_list] ...

[ELSE statement_list]

END CASE