当前位置: 首页 > 编程笔记 >

Microsoft SQL Server 简单枢轴-静态列

袁英豪
2023-03-14
本文向大家介绍Microsoft SQL Server 简单枢轴-静态列,包括了Microsoft SQL Server 简单枢轴-静态列的使用技巧和注意事项,需要的朋友参考一下

示例

使用示例数据库中的项目销售表,让我们计算并显示每个产品的总销售数量。

使用group by可以很容易地做到这一点,但假设我们以某种方式“旋转”结果表,即对于每个产品ID,我们都有一个列。

SELECT [100], [145]
  FROM (SELECT ItemId , Quantity
          FROM #ItemSalesTable
       ) AS pivotIntermediate
 PIVOT (   SUM(Quantity)
           FOR ItemId IN ([100], [145])
       ) AS pivotTable

由于我们的“新”列是数字(在源表中),因此我们需要使用方括号 []

这将给我们输出像

100 145
45 18岁
 类似资料:
  • 问题内容: 我有一张这样的产品零件表: 部分 我想要一个查询,将返回这样的表: 在其实际实施中,将有数百万个产品零件 问题答案: 不幸的是,MySQL没有函数,但是您可以使用聚合函数和语句对其进行建模。对于动态版本,您将需要使用准备好的语句: 请参见带有演示的SQL Fiddle 如果只有几列,则可以使用静态版本:

  • 我在使用PIVOT SQL脚本时遇到了一个“小”问题。我目前的解决方案基于类似的问题 动态枢轴 . 我已经写好了PIVOT脚本,基本上没问题。然而,我的情况是这样的,脚本输出类似这样的内容,而不是将唯一的条目放在单行上 而我所寻找的结果应该是这样的 这是脚本 我将不胜感激一些可以帮助我解决这个问题的指示。我在这里做了一个小提琴,由于某种奇怪的原因,它没有输出任何东西,但生成架构的所有代码都在那里

  • 问题内容: 好吧,我有一张看起来像这样的表 现在,我需要将其转换为: 我一直在看动态透视图示例,但是我似乎无法使其适合我的情况。 有人可以帮忙吗? 问题答案: 看下面的例子

  • 问题内容: 我正在使用Microsoft SQL Server Management Studio 2008。 我有看起来像这样的数据: 我希望结果显示如下: 这些列是未知的,所以我知道我需要一个动态查询。我已经尝试过使用数据透视功能进行动态查询,但只在相同类型的值下进行分组。所以聚合函数对我不利。 这是我尝试过的查询: 执行(@DynamicPivotQuery) 接下来,我添加了row_num

  • 问题内容: 示例选择: 输出: 是否可以按时间顺序对记录进行排序,排除列“月”和“年”?没有列出所有列。 UPD 需要: 就像是: 问题答案: 要对记录进行排序,可以将以下内容添加到sql的末尾 注意:枢轴列名称区分大小写,因此需要用引号引起来 这是完整的查询,仅选择您需要的列: