sql - 使用 ABAP 中另一个表列数据的列名和值创建内部表
问题描述
我有一个表,其中包含字段名和字段值等字段。我正在尝试将此表转换为另一种格式。
例如,我有下表的字段和值:
-----------------------------
| Fieldname | Fieldvalue |
-----------------------------
| Matnr | 001 |
| Werks | 1000 |
| Statu | 01 |
-----------------------------
我想创建一个具有以下列名称和值的内部表,如下所示:
-------------------------------
| Matnr | Werks | Statu |
-------------------------------
001 1000 01
我怎样才能做到这一点?
解决方案
您可以使用条件聚合:
select max(case when fieldname = 'Matnr' then fieldvalue end) as matnr,
max(case when fieldname = 'Werks' then fieldvalue end) as Werks,
max(case when fieldname = 'Statu' then fieldvalue end) as Statu
from t;
推荐阅读
- html - 表格组件之间的填充不起作用
- c++ - C++ std::hash 返回类型
- javascript - Angular SSR NgApexcharts SVG 未定义
- javascript - 为什么在我的计算机上调用主类函数的扩展类没有定义变量?
- c - 将用户的消息转发给服务器上的其他用户
- java - 如何在 Java 中使用 pgp 加密来加密 .tar 文件
- database - SpringJPA 查询问题
- javascript - 决定通过创建一个链接到多个 HTML 页面的 JS 来聪明地工作,但是这样做一个按钮似乎不起作用。似乎无法理解为什么
- javascript - 如何通知我在 express js 中成功创建了一个 sql 池?
- angular - 如何遍历 API 响应并将响应值分配给角度 8 中的嵌套数组