gpt4 book ai didi

sql - T-SQL 中带有 PIVOT 命令的 GROUP BY 语句

转载 作者:行者123 更新时间:2023-12-05 02:14:07 27 4
gpt4 key购买 nike

我有一个 SQL 查询,它涉及创建正确表的 PIVOT 命令,但现在我需要对其中一列进行 GROUP BY。

当我尝试添加 GROUP BY 语句时,它返回以下错误:“列 'PivotTable.1' 在选择列表中无效,因为它既不包含在聚合函数也不包含在 GROUP BY 子句中。”

SELECT [Load ID],[1],[2],[3],[4]
FROM TMS_Load_Stops
PIVOT (
MIN([Stop Zip])
for [Sequence] IN ([1],[2],[3],[4])
) PivotTable
;

原始代码产生以下结果: enter image description here

我希望结果如下(为了便于解释,值是随机数): enter image description here

最佳答案

如果省略 Group by 子句,它会自动将 [Load ID] 作为分组列。我们在 pivot 中有三种类型的列——分组列、聚合列和生成列。这里的分组是 [Load ID],生成是 [Sequence],聚合是 [Stop Zip]。使用以下查询。

SELECT [Load ID],[1],[2],[3],[4]
FROM TMS_Load_Stops
PIVOT (
MIN([Stop Zip])
for [Sequence] IN ([1],[2],[3],[4])
) PivotTable

关于sql - T-SQL 中带有 PIVOT 命令的 GROUP BY 语句,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54148658/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com