【发布时间】:2020-01-05 14:16:54
【问题描述】:
我有一张这样的桌子
PCode Milestone DeliveryDate Status
------------------------------------------------------
P1234 Start 14/5/2019 Complete
P1234 End 17/6/2019 Complete
P2345 Start 8/6/2019 Progress
P2345 End 19/6/2019 Progress
P7335 Start 18/8/2019 Provisional
P7335 End 19/9/2019 Provisional
-----------------------------------------------------------
根据上面的数据我需要得到一个这样的表
PCode Start End Status
---------------------------------------------
P1234 14/05/2019 17/06/2019 Completed
P2345 8/6/2019 19/06/2019 Progress
P7335 18/08/2019 19/09/2019 Provisional
----------------------------------------------
我不知道如何使用一些 PIVOT 来实现这一点
【问题讨论】:
-
对于给定的一对记录,
Status文件是否有可能不一致,如果是这样,选择要报告的两个值中的哪一个的逻辑是什么? -
对我来说看起来像是条件聚合。到目前为止,您尝试过什么来解决这个问题?
-
@TimBiegeleisen 这没有转换成行,因为我们没有制作具有不同开始和结束日期的列。它针对具有开始值和结束值的所有行创建一列。
标签: tsql sql-server-2012