- create table #a_aa_a(
- t_id int,
- t_uesrid INT ,
- t_time varchar(10)
- )
- insert into #a_aa_a VALUES (1,1,'20200101')
- insert into #a_aa_a VALUES (2,1,'20210101')
- insert into #a_aa_a VALUES (3,1,'20220101')
- insert into #a_aa_a VALUES (4,2,'20210101')
- insert into #a_aa_a VALUES (5,2,'20220101')
- insert into #a_aa_a VALUES (6,2,'20230101')
- insert into #a_aa_a VALUES (7,3,'20210101')
- insert into #a_aa_a VALUES (8,3,'20220101')
- insert into #a_aa_a VALUES (9,3,'20230101')
- select a.t_name,count(a.[20210401]) [20210401],count(a.[20210403]) [20210403],count(a.[20210405]) [20210405],count(a.[20210408]) [20210408]
- from #a_aa_a
- pivot(
- sum(t_grade)
- for
- t_date
- in([20210401],[20210403],[20210405],[20210408])
- )as a
- group by a.t_name
- --其实就是一个表间接生成一个临时的group by分组的一个表
测试版本