1

例如。

身份证姓名年龄状态
1 一个 10 1
2 bbb 20 0
3 立方厘米 30 1

现在如何从单个查询中计算 1 和 0 的总状态。
Ans 将是 1 => 2 和 0 => 1

4

2 回答 2

3

要获得我相信您所要求的一行,请使用条件SUMs:

SELECT SUM(CASE WHEN status = 1 THEN 1 ELSE 0 END) AS status1,
    SUM(CASE WHEN status = 0 THEN 1 ELSE 0 END) AS status0
FROM Table1

要获得多行,只需GROUP BY状态:

SELECT status, COUNT(1) AS rows
FROM Table1
GROUP BY status
于 2013-08-22T05:41:53.500 回答
1

请试试:

SELECT 
    STATUS, 
    COUNT(*) Total 
FROM 
    YourTable
GROUP BY STATUS

或者

SELECT DISTINCT
    STATUS, 
    COUNT(*) OVER (PARTITION BY STATUS) Total 
FROM 
    YourTable
于 2013-08-22T05:42:28.863 回答