27,580
社区成员
发帖
与我相关
我的任务
分享
USE tempdb
GO
IF OBJECT_ID('dbo.[t]') IS NOT NULL
DROP TABLE dbo.[t]
GO
CREATE TABLE dbo.[t](
[Name] NVARCHAR(10)
,[State] NVARCHAR(10)
,[City] NVARCHAR(10)
)
GO
SET NOCOUNT ON
INSERT INTO dbo.[t] VALUES(N'张三',N'在读',N'上海')
INSERT INTO dbo.[t] VALUES(N'李四',N'辍学',N'北京')
INSERT INTO dbo.[t] VALUES(N'王五',N'辍学',N'北京')
INSERT INTO dbo.[t] VALUES(N'赵六',N'辍学',N'深圳')
INSERT INTO dbo.[t] VALUES(N'小红',N'辍学',N'北京')
INSERT INTO dbo.[t] VALUES(N'小明',N'辍学',N'北京')
--以上为测试数据及测试表
select city AS 城市名称
,sum(CASE when [State]='在读' then 1 else 0 end) AS 在读生数量
,sum(CASE when [State]='辍学' then 1 else 0 end) AS 辍学生数量
from t
group by City
/*
城市名称 在读生数量 辍学生数量
---------- ----------- -----------
北京 0 4
上海 1 0
深圳 0 1
*/