自己想的,性能不知道如何,不过应该影响不大
思路:
1.我们要转的表
name FQdState count
财务会计 未签到 2
思想政治 未签到 1
思想政治 已签到 1
查询语句
select name,FQdState,count(1)'count' from VMTeetingGuest group by name,FQdState
2.转换
分两步
1.转换
SELECT
name, FQdState,
CASE FQdState WHEN '未签到' THEN count(1) ELSE 0 END AS '未签到',
CASE FQdState WHEN '已签到' THEN count(1) ELSE 0 END AS '已签到'
FROM dbo.VMTeetingGuest
2.合并
select name,sum(未签到)'未签到',sum(已签到)'已签到' from (
上面的语句)
as t group by name
效果
name 未签到 已签到
财务会计 2 0
思想政治 1 1
OK收工