Cal*_*iff 1 sql t-sql sql-server pivot sql-server-2008
我很难找到解决以下问题的方法.假设,有一个像这样的表
COL1 FLAG
aaa 1
aaa 0
aaa 1
bbb 0
Run Code Online (Sandbox Code Playgroud)
我需要编写一个查询来获得以下输出:
COL1_VALUE FLAGGED TOTAL
aaa 2 3
bbb 0 1
Run Code Online (Sandbox Code Playgroud)
其中FLAGGED列包含FLAG = 1的'aaa'行值的总数,TOTAL列是包含'aaa'的行总数,换句话说,查找包含'aaa'的行数相对于包含'aaa'的总行数.是否可以使用单个查询?(即不使用临时表等)
(MSSQL2008)
SELECT COL1 AS COL1_VALUE,
COUNT(CASE WHEN FLAG = 1 THEN 1 END) AS FLAGGED,
COUNT(*) AS TOTAL
FROM YourTable
GROUP BY COL1
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
188 次 |
| 最近记录: |