sql - 对于同一行 SQL Server 上的每个显示
问题描述
我正在尝试创建一个包含程序集编号和每个组件的单行。
我有一个名为Assembly
唯一标识符的表,该表可以绑定到该inv_mast
表以及该表中可以绑定到同一个inv_mast
表的组件。它还包括一个序列号。
inv_mast_uid | sequence_number | component_inv_mast_uid
453061 | 1 | 453024
453061 | 2 | 453017
453061 | 3 | 453020
453062 | 1 | 453019
453062 | 2 | 453027
(我的一些条目只有 2 个组件)
我想要实现的是:
inv_mast_uid | component_inv_mast_uid_1 | component_inv_mast_uid_2 | component_inv_mast_uid_3
453061 | 453024 | 453017 | 453020
453062 | 453019 | 453027 | Null
我在想我会使用“For Each”循环,但我从来没有运气好过它和 SQL Server
解决方案
您正在尝试做的事情称为 Pivot 所以我希望这对您有所帮助
SELECT INV_MAST_UID
,[1] AS COMPONENT_INV_MAST_UID_1
,[2] AS COMPONENT_INV_MAST_UID_2
,[3] AS COMPONENT_INV_MAST_UID_3
FROM Assembly
PIVOT
(
MAX(COMPONENT_INV_MAST_UID)
FOR sequence_number IN([1],[2],[3])
) as pvt
如果您想查看 Microsoft 文档。Sql Server 中的数据透视表
问候
推荐阅读
- vue.js - Vue:CSS 模块未使用 SCSS 应用或显示
- docker - 如何在带有/不使用 docker 的 azure 管道中使用 jmx 文件运行 JMeter
- node.js - Docusign:签名人/收件人签名后或信封完成后,如何将文件发送给他们?
- node.js - 如何在下一个 js 会话中存储大数据或使用会话文件存储?
- android - 从二维码获取结果后自动发送短信到手机号码
- maven - swagger-maven-plugin 没有生成@ApiResponse 方案
- reactjs - 如何从同一个组件调度多个动作?
- android - 如何在片段内使用地图
- powerapps - 用于打开特定表单的功能区按钮
- excel - 根据下拉列表 [Excel] 从按钮单击将文本插入活动单元格