【发布时间】:2016-06-29 12:48:58
【问题描述】:
我有一个如下结构的 SQL Server 表:
id TransDate PartType
======================================
1 2016-06-29 10:23:00 A1
2 2016-06-29 10:30:00 A1
3 2016-06-29 10:32:00 A2
4 2016-06-29 10:33:00 A2
5 2016-06-29 10:35:00 A2
6 2016-06-29 10:39:00 A3
7 2016-06-29 10:41:00 A4
我需要一个SELECT 语句,它将输出一个表,该表可以找到PartType 中的更改,并且看起来像这样(出于SSRS 目的):
PartType StartTime EndTime
=======================================================
A1 2016-06-29 10:23:00 2016-06-29 10:32:00
A2 2016-06-29 10:32:00 2016-06-29 10:39:00
A3 2016-06-29 10:39:00 2016-06-29 10:41:00
A4 2016-06-29 10:41:00 NULL
请注意,StartTime 始终从最后一个 EndTime 开始,除非它是表中的第一条记录。
我的SELECT 声明应该是什么?我似乎无法获得预期的结果。
编辑:我使用的是 SQL Server 2008 R2;我应该指定的。
【问题讨论】:
标签: sql select reporting-services sql-server-2008-r2 ssrs-2008-r2