我有一个数据集,其中id依次经过阶段A到D(A到B,B到C和C到D)。
我有一个时间戳,用于跟踪id进入特定阶段的时间。这是我的数据的样子
因此,我有兴趣创建一个名为“状态”的字段,该字段显示根据A的时间戳转换的B,C,D的数量
例如;
8月19日的数字'A's = 7
A的时间戳为19年8月(与Date_B下的日期无关)= 5 的'B'的数量
A的时间戳为19年8月(与Date_C下的日期无关)= 5 的'C'的数量
A的时间戳为19年8月(与Date_D下的日期无关)= 5时,转换的'D'的数量
我尝试使用全部联合,,但其实时为我提供了“状态” ,其ID为1的“ date_B”获得的日期为9月19日,而不是8月'19。这是我使用的查询;
SELECT id,CAST (Date_A AS DATE) AS 'Pivot Date','A' AS 'Status'
FROM table1
UNION ALL
SELECT id,CAST (Date_B AS DATE) AS 'Pivot Date','B' AS 'Status'
FROM table1
UNION ALL
SELECT id,CAST (Date_C AS DATE) AS 'Pivot Date','C' AS 'Status'
FROM table1
UNION ALL
SELECT id,CAST (Date_D AS DATE) AS 'Pivot Date','D' AS 'Status'
FROM table1
有人可以指出我正确的方向吗?
谢谢!