如果您拥有此列表中的数据:
nvarchar int int nvarchar nvarchar
Line start end typ color
-------------------------------------------
T11 1 null cookie Blue
T11 null 10 cookie Blue
T11 null null cookie Blue
T11 null null cookie Blue
T2 20 null computer Red
T2 null null computer Red
T2 null 52 computer Red
T3 null null dark black
T3 52 null dark black
T3 null 10 dark black
请求的结果应为:
Line start end typ color
-------------------------------------------
T11 1 10 cookie Blue
T2 20 52 computer Red
T3 52 10 dark black
我应该如何在SQL Server 2012中执行此操作?
答案 0 :(得分:2)
我认为这就是你要求的。显然用表名替换tablename。
SELECT t.line, MIN(t.START), MAX(t.END), t.typ, t.color
FROM dbo.tablename t
GROUP BY t.line, t.typ, t.color