-2

我有一个名为 的表Action,我想在其中添加新列。

我要添加的列是此查询的结果:

SELECT DATE_AFFECTATION  ,
       SUM(CASE WHEN STATUT_Ticket = 'Clôturé' THEN 1 ELSE 0 END) AS TotalCloturé,
       SUM(CASE WHEN STATUT_Ticket = 'En cours' THEN 1 ELSE 0 END) AS TotalEncours,
       SUM(CASE WHEN STATUT_Ticket = 'Gelé' THEN 1 ELSE 0 END) AS TotalGelé,
       SUM(CASE WHEN STATUT_Ticket = 'Hors délai' THEN 1 ELSE 0 END) AS TotalHorsdélai,
       SUM(CASE WHEN STATUT_Ticket = 'Nouveau' THEN 1 ELSE 0 END) AS TotalNouveau,
       SUM(Sum(CASE WHEN STATUT_Ticket = 'Clôturé' THEN 1 ELSE 0 END)) Over (ORDER BY DATE_AFFECTATION) AS cumTotalCloturé,
       SUM(Sum(CASE WHEN STATUT_Ticket = 'En cours' THEN 1 ELSE 0 END)) Over (ORDER BY DATE_AFFECTATION) AS cumTotalEncours,
       SUM(Sum(CASE WHEN STATUT_Ticket = 'Gelé' THEN 1 ELSE 0 END)) Over (ORDER BY DATE_AFFECTATION) AS cumTotalGelé,
       SUM(Sum(CASE WHEN STATUT_Ticket = 'Hors délai' THEN 1 ELSE 0 END)) Over (ORDER BY DATE_AFFECTATION) AS cumTotalHorsdélai,
       SUM(Sum(CASE WHEN STATUT_Ticket = 'Nouveau' THEN 1 ELSE 0 END)) Over (ORDER BY DATE_AFFECTATION) AS cumTotalNouveau
FROM DIM_Ticket
GROUP BY DATE_AFFECTATION
ORDER BY DATE_AFFECTATION

这可能吗?

4

2 回答 2

0

您的查询返回多于一列。
您不能添加一列并将其填充到单个查询中。

于 2019-01-18T13:12:28.377 回答
0

评论太长了。

如果要向现有表添加列,则语法为alter table. 例如:

alter table add column TotalCloturé int;

默认值是NULL或者您可以提供一个常量默认值(例如0在本例中)。

您不会使用查询添加列。

因此,您的问题很不清楚。您只是想为现有列分配值吗?除了原始表中的列之外,您是否只需要包含这些列值的结果集?您是否需要触发器(或其他一些机制)以使值保持同步?

于 2019-01-18T11:56:41.060 回答