【发布时间】:2019-08-20 17:39:49
【问题描述】:
我有以下数据集:
SELECT * FROM assets;
AA_ASSET_ID ASSET_ID ASSET_NAME CLASS_ID CLASS_NAME
1023 1023 Head tip 4 Accessory
1023 1056 Sorter 2 Equipment
1023 1557 Workcell 1 Lab System
我想要一个可以将其输出到每个 aa_asset_id 一行的查询:
ID Lab_System Equipment Accessory
1023 Workcell Sorter Head tip
我已经对 PIVOT 进行了修改,但无法完全使其正常工作。有没有办法让它输出?
【问题讨论】:
-
它是 Oracle 12c
-
只有 3 个 CLASS_NAME 吗?
-
这可以通过 PIVOT 完成,但是您需要考虑几个问题(然后在此处回答,以便我们提供帮助)。 (1) 是否关心表中的其他数据,例如 ASSET_ID 和 CLASS_ID? (2) 是否所有类名事先已知(无需查看表中的数据)? (3) 列名是否以这种精确大小写(首字母大写,单词其余部分小写)是您要求的一部分?
-
可能不止 3 个,但对于我的特定用例,我只对这 3 个感兴趣。
-
类名是常量且已知的。它们位于相关表中,但不会更改。我知道 1,2,4 是我感兴趣的。是的,类名就是这种情况。