两次显示相同的记录 - SQL Reporting Services

时间:2010-05-25 07:29:07

标签: sql sql-server-2005 reporting-services

好的,情况就是这样:我需要在两个不同的部分显示相同的记录。愚蠢我知道,但这就是原因。

我正在构建的报告按一个字段分组,称为Day。每条记录都有 日期/时间,预计到达日期时间和预计出发日期/时间。

所以,此时我们有这样的事情:

日..............到达时间..................出发时间

18/5 ............. 18/5 9.00am ......... 19/5 11.00am

老板只想显示与到达/离开coloumns当前日相关的时间(表达式很容易),最终结果如下:

日..............到达时间..................出发时间

18/5 ..............上午09时.........................-

他想要的下一件事就是在正确的一天'组'中显示离开的时间,但是一旦你移动到下一行,你可以想象,你移动到表的下一行。

所以问题是:无论如何在多个coloumns上显示相同的记录?我错过了什么或者我有一个无法解决的问题吗?

注意:这不是我表中的唯一数据。还有(例如)名称coloumn,也需要在两天显示。

1 个答案:

答案 0 :(得分:0)

笛卡尔联接非常适合复制数据...

DECLARE @ArrDep TABLE
(
  Code varchar(1)
)

INSERT INTO @ArrDep (Code) SELECT "A"
INSERT INTO @ArrDep (Code) SELECT "D"

SELECT DateAdd(dd, DateDiff(dd, 0, 
  CASE
    WHEN ad.Code = "A"
    THEN mt.ArrivalTime
    ELSE mt.DepartureTime
  END), 0) as TheDay
  , *
FROM MyTable mt, @ArrDep ad
ORDER BY 1