我有这个查询:
SELECT
bt AS id,SUM(tempo) AS totalDowntime,COUNT(manut.tempo) AS ocorrences,MAX(data) AS date
FROM
(SELECT
bt,DATEDIFF(SECOND,LAG(data,1) OVER (ORDER BY data),data) AS tempo,status,data
FROM
[machining].[dbo].[manutencao]
WHERE
data > '2019-10-28' AND data <= '2019-11-05'
AND CONVERT((DATEPART(dw,data) + @@DATEFIRST) % 7) NOT IN (0,1)
AND bt IN (52)
GROUP BY
bt,data,status) manut
WHERE
status = 1
GROUP BY
bt,DATEPART(yy,data),DATEPART(mm,DATEPART(dd,data)
ORDER BY
bt ASC
返回如下内容:
| id | totalDowntime | ocurrences | date |
+----+---------------+------------+-------------------------+
| 52 | 11909 | 19 | 2019-10-28 14:01:58.000 |
| 52 | 3980 | 12 | 2019-10-29 23:25:00.000 |
| 52 | 158 | 2 | 2019-10-30 02:29:49.000 |
我想将所有这些行合并为一个:
| id | totalDowntime | ocurrences | date | totalDowntime2 | ocurrences2 | date2 | totalDowntime3 | ocurrences3 | date3 |
|----|---------------|------------|-------------------------|----------------|-------------|-------------------------|----------------|-------------|-------------------------|
| 52 | 11909 | 19 | 2019-10-28 14:01:58.000 | 3980 | 12 | 2019-10-29 23:25:00.000 | 158 | 2 | 2019-10-30 02:29:49.000 |
注意:
- 未知列数
- 年代顺序
我该如何实现?