我是一個學習 MSSQL 和資料庫的新手。我正在嘗試撰寫一個 SQL 查詢來計算列中的值。下表為原表。
name value
----------
A 1
A 1
A 2
B 1
B 2
我想要一張這樣的桌子。
name one two
--------------
A 2 1
B 1 1
A 有兩個 1 和一個 2,B 有一個 1 和 2。看來我可以使用 COUNT 內置函式來完成它。我試過但失敗了。有什么想法嗎?
uj5u.com熱心網友回復:
使用條件聚合
select name, sum(case when value=1 then 1 else 0 end) as one,
sum(case when value=2 then 1 else 0 end) as two
from table_name group by name
轉載請註明出處,本文鏈接:https://www.uj5u.com/gongcheng/432420.html
上一篇:使用多個帶有JOIN的UNION對我的查詢進行高效/優化的查詢
下一篇:選擇包含唯一值的行(非冗余)
