上午 1 2008-08-01 NULL NULL NULL √
下午 1 2008-08-01 NULL NULL NULL √
上午 1 2008-08-01 NULL NULL √ NULL
下午 1 2008-08-01 NULL NULL √ NULL 我想把上午和下午的各自合并到一起。就是
上午 1 2008-08-01 NULL NULL √ √
下午 1 2008-08-01 NULL NULL √ √
下午 1 2008-08-01 NULL NULL NULL √
上午 1 2008-08-01 NULL NULL √ NULL
下午 1 2008-08-01 NULL NULL √ NULL 我想把上午和下午的各自合并到一起。就是
上午 1 2008-08-01 NULL NULL √ √
下午 1 2008-08-01 NULL NULL √ √
上午 1 2008-08-01 NULL NULL NULL √
下午 1 2008-08-01 NULL NULL NULL √
上午 1 2008-08-01 NULL NULL √ NULL
下午 1 2008-08-01 NULL NULL √ NULL --
select a,b,c,d,e,max(f) as f,max(g) as g
from ta
group by a,b,c,d,e
insert @t select '上午', 1, '2008-08-01', NULL, NULL, NULL, '√'
insert @t select '下午', 1, '2008-08-01', NULL, NULL, NULL, '√'
insert @t select '上午', 1, '2008-08-01', NULL, NULL, '√', NULL
insert @t select '下午', 1, '2008-08-01', NULL, NULL, '√', NULL
select A,ID,[date],C,D,max(E),max(F) from @t group by A,ID,[date],c,dA ID date C D
---------- ----------- ----------------------- ---------- ---------- ---------- ----------
上午 1 2008-08-01 00:00:00.000 NULL NULL √ √
下午 1 2008-08-01 00:00:00.000 NULL NULL √ √
警告: 聚合或其他 SET 操作消除了空值。(2 行受影响)
上午 1 2008-08-01 NULL NULL NULL √
下午 1 2008-08-01 NULL NULL NULL √
上午 1 2008-08-01 NULL NULL √ NULL
下午 1 2008-08-01 NULL NULL √ NULL
--
select a,b,c,d,e,max(f) as f,max(g) as g
from ta
group by a,b,c,d,e
declare @T table([Col1] nvarchar(2),[Col2] int,[Col3] Datetime,[Col4] nvarchar(1),[Col5] nvarchar(1),[Col6] nvarchar(1),[Col7] nvarchar(1))
Insert @T
select N'上午',1,'2008-08-01',null,null,null,N'√' union all
select N'下午',1,'2008-08-01',null,null,null,N'√' union all
select N'上午',1,'2008-08-01',null,null,N'√',null union all
select N'下午',1,'2008-08-01',null,null,N'√',null
Select
[Col1],[Col2],[Col3],
[Col4]=max([Col4]),[Col5]=max([Col5]),[Col6]=max([Col6]),[Col7]=max([Col7])
from @T group by [Col1],[Col2],[Col3]
order by [Col3],[Col1] desc/*
Col1 Col2 Col3 Col4 Col5 Col6 Col7
---- ----------- ----------------------- ---- ---- ---- ----
上午 1 2008-08-01 00:00:00.000 NULL NULL √ √
下午 1 2008-08-01 00:00:00.000 NULL NULL √ √
*/