将多行合并为多列的行

我有这个查询:

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 |

注意:

  • 未知列数
  • 年代顺序

我已经看过这些问题(12),但我仍然对此感到困惑。

我该如何实现?

siqi111 回答:将多行合并为多列的行

暂时没有好的解决方案,如果你有好的解决方案,请发邮件至:iooj@foxmail.com
本文链接:https://www.f2er.com/3166853.html

大家都在问