如何在 SQL 中取消透视? (SAP HANA)(列到行)

2024-01-25

我需要取消透视 SAP HANA 中的一些数据。我设置了一个示例表来尝试一下,但我仍然一无所获。

实际的表包含 1000 个 ID 和大约 50 个列,但我想对许多表执行此操作,因此虽然我可以指定 FieldNames(原始列),但如果有一个自动化解决方案就更好了。

这是我设置的示例表:

我想将结果转换成这种形式:

注意:“?”代表NULL。

创建示例表:

create local temporary table #example
(
ID NVARCHAR(255),
Name NVARCHAR(255),
Country NVARCHAR(255),
Balance Decimal(18,2)
);

insert into #example values('ID1','Bill','USA', 100);
insert into #example values('ID2','','', 45);
insert into #example values('ID3', NULL,NULL, 768);
insert into #example values('ID4',NULL,'France', 42);

这是一个需要我指定列名和类型转换的解决方案:

(感谢 jarlh 的工会建议)

select 
"ID",
'Country' as "FieldName",
"COUNTRY" as "FieldValue"
from #example
union all
select 
"ID",
'Name' as "FieldName",
"NAME" as "FieldValue"
from #example
union all
select 
"ID",
'Balance' as "FieldName",
CAST("BALANCE" as NVARCHAR) as "FieldValue"
from #example
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何在 SQL 中取消透视? (SAP HANA)(列到行) 的相关文章

  • 模式更新后 jOOQ 生成的类的运行时验证?

    我用org jooq util DefaultGenerator在构建过程中生成 jOOQ 类来表示我的数据库模式 当应用程序运行时 架构预计会在应用程序不知情的情况下发生更改 此类更改可能与已生成的代码兼容 也可能不兼容 如何在运行时检测
  • 插入多行并返回主键时 Sqlalchemy 的奇怪行为

    插入多行并返回主键时 我注意到一些奇怪的事情 如果我在 isert 查询中添加使用参数值 我会得到预期的行为 但是当将值传递给游标时 不会返回任何内容 这可能是一个错误还是我误解了什么 我的sqlachemy版本是0 9 4 下面如何重现错
  • 如何有效地从 DB2 表中删除所有行

    我有一个大约有 50 万行的表 我想删除所有行 如果我做简单的delete from tbl 事务日志已满 我不关心这种情况下的事务 无论如何我都不想回滚 我可以删除许多事务中的行 但是有更好的方法吗 如何有效地从 DB2 中的表中删除所有
  • 查询中列的顺序重要吗?

    当从 MySQL 表中选择列时 与表中的顺序相比 选择列的顺序是否会影响性能 不考虑可能覆盖列的索引 例如 您有一个包含行 uid name bday 的表 并且有以下查询 SELECT uid name bday FROM table M
  • java mysql 准备好的语句

    我正在尝试使用 java 向数据库中进行简单的插入 它告诉我我的 sql 语法已关闭 但是 当我复制打印出来的字符串并将其放入 phpmyadmin 中的 sql 命令中时 它会正确执行该命令 并且我似乎无法弄清楚 java 中的字符串查询
  • 复选框上的数据绑定

    我目前正在将数据从 SQL 数据库之一提取到我的应用程序中 我可以让它适用于我的文本框和其他项目 但是 我似乎无法让它适用于复选框 这是我正在使用的代码 DataTable dt new DataTable dt using SqlConn
  • 查找 PostgreSQL 中所有范围集合的所有交集

    我正在寻找一种有效的方法来查找时间戳范围集之间的所有交集 它需要与 PostgreSQL 9 2 配合使用 假设这些范围代表一个人可以见面的时间 每个人都可以有一个或多个空闲时间范围 我想找到all可以召开会议的时间段 即所有人都有空的时间
  • 如何在 Visual Studio 中更改 Azure 数据库表的列顺序

    我整个下午都在寻找在 MS Visual Studio 2022 中重新排序 Azure 数据库表列的方法 没有运气 在其他应用程序中 可以通过拖动或剪切和粘贴轻松重新排列列 这里无能为力 此时 我什至不确定可以在 VS 中移动列 我只对
  • 使用 JSON 参数的 Postgres 批量 INSERT 函数

    这是一个plpgsqlpostgres 的函数9 6 它试图INSERT一行 如果插入没有失败 由于违反键约束 那么它会运行更多命令 CREATE FUNCTION foo int text text RETURNS void AS BEG
  • 独立对列进行排序,使得所有空值都位于每列的最后

    这是一个名为的示例表animal name color fox brown fox red dog gold 现在 我想要的是这样的结果 fox dog brown gold red 名称应该是结果的列 不同颜色值作为行 我的第一个想法是
  • 当所有维度值都具有 100% 重要性时处理多对多维度

    我至少会尽力保持简洁 假设我们正在跟踪一段时间内的账户余额 所以我们的事实表将包含诸如 账户余额情况表 FK 账户ID FK 日期ID Balance 显然你有一个账户维度表 and a 日期维度表 所以现在我们可以轻松地过滤帐户或日期 或
  • 对多个数据库执行 SQL 查询

    我知道我的帖子与该论坛中的其他帖子的标题非常相似 但我真的找不到我需要的答案 这是我的问题 我的 Windows Server 上运行着 SQL Server 在我的 SQL Server 中 我有大约 30 个数据库 它们都具有相同的表和
  • 用更轻的解决方案替换完整的 ORM(JPA/Hibernate):推荐的加载/保存模式?

    我正在开发一个新的 Java Web 应用程序 并且正在探索保存数据的新方法 对我来说是新方法 我主要有 JPA 和 Hibernate 的经验 但是 除了简单的情况之外 我认为这种完整的 ORM 可能会变得相当复杂 另外 我不太喜欢和他们
  • MySQL 查询到 CSV [重复]

    这个问题在这里已经有答案了 有没有一种简单的方法来运行MySQL查询来自linux命令行并以csv格式输出结果 这就是我现在正在做的事情 mysql u uid ppwd D dbname lt lt EOQ sed e s g tee l
  • SELECT 语句会受到 SQL 注入攻击吗?

    实际上有2个问题 我知道我必须尽可能多地使用存储过程 但我想知道以下内容 A 我可以从 SELECT 语句 例如 Select from MyTable 获得 SQL 注入攻击吗 B 另外 当我在 ASP NET 中使用 SQLDataSo
  • 为表中的每个组选择前 N 行

    我面临一个非常常见的问题 即 为表中的每个组选择前 N 行 考虑一个表id name hair colour score列 我想要一个结果集 对于每种头发颜色 都能得到前 3 名得分手的名字 为了解决这个问题 我得到了我所需要的Rick O
  • 如何使用sql作为xml路径('')但保留回车符

    我有下面的代码 select select cast Narrative as Varchar max char 13 from officeclientledger where ptmatter matter and ptTrans 4
  • 将表数据从一个 SQL Server 导出到另一台 SQL Server

    我有两个 SQL Server 都是 2005 版本 我想将多个表从一个表迁移到另一个表 我努力了 在源服务器上 我右键单击数据库 选择Tasks Generate scripts 问题是在下面Table View options没有Scr
  • 如何使用 LAMBDA 表达式在 LINQ 中执行 IN 或 CONTAINS?

    我有以下 Transact Sql 我正在尝试将其转换为 LINQ 并且很挣扎 SELECT FROM Project WHERE Project ProjectId IN SELECT ProjectId FROM ProjectMemb
  • 如何获得顶部带有千位分隔符的数字?

    SELECT count FROM table A 假设结果是8689 我怎样才能将它转换为8 689在 SQL Server 上 尝试这样 select replace convert varchar convert Money coun

随机推荐

  • 保存文件 - xmlSerializer

    我正在创建一个使用以下代码序列化文件的方法 public void Save Object file Type type String path Create a new Serializer XmlSerializer serialize
  • F# 交互式 CsvProvider 未定义

    我正在交互式控制台中加载 FSharp Data 库加载没有任何问题 gt r FSharp Data dll gt Referenced C Users pw AppData Local Temp FSharp Data dll file
  • 在 Dask 数组上使用 scikit-learn cosine_similarity - python

    我有 Dask 来处理无法放入内存的大量向量 并使用 scikit learn cosine similarity 来计算这些向量之间的余弦相似度 即 import dask array as da from sklearn metrics
  • fancybox 将标题放在顶部并留在那里

    我正在使用 Fancybox 2 0 我希望标题框出现在图像上方或图像顶部 而不是下方 就在所有内容之上 我试着做fancybox inner style position absolute 但随后的高度fancybox wrap不会被设置
  • 如何在邮递员中传递客户端凭据?

    这个卷发效果很好 curl acme acmesecret localhost 9999 uaa oauth token d password password username user grant type password H Acc
  • CMake - Code::Blocks - hello world - 基本示例

    在哪里可以找到生成要在 CMake 中加载的简单 CMake Hello World 项目的指南 平台 联想32位Linux Kubuntu 1 我将使用 git 存储库 git CMakeLists txt git code CMakeL
  • 删除托管(非外部)表时,hdfs 上的 Hive 文件不会被删除

    当我从 Hive 交互式命令行删除托管表时 在 hdfs 上创建的基础文件位于 user hive warehouse
  • 是否可以在 Angular 2 上创建组件抽象?

    我想创建一个具有初始行为的 AbstractComponent 同时能够在需要时在子组件上覆盖它 这可能吗 这是一个好的做法吗 应该看起来或多或少像这样 export abstract class AbstractComponent imp
  • 如何计算出移动物体的未来位置? [关闭]

    Closed 这个问题是无关 help closed questions 目前不接受答案 我正在创建一个小游戏 我有一个光子鱼雷 它从一艘船上向目标发射 现在 由于鱼雷的速度很慢 如果目标正在移动 船将永远不会击中任何目标 我想解决这个问题
  • 如何在没有用户和登录的情况下使用JWT?

    我正在 Node js 中制作一个简单的文件转换器 API 并且希望避免请求中的滥用 所以我正在寻找一种无需 userModel 登录等即可使用 JWT 的方法 但我不能在网上做事 谢谢 我们不需要用户或登录来创建 JWT 我们可以使用任何
  • Mercurial 删除历史记录

    Mercurial 有没有办法从数据库中删除旧的变更集 我有一个 60GB 的存储库 这使得克隆变得非常痛苦 我想在某个日期之前删除所有内容 并将庞大的数据库收起来以收集灰尘 没有简单 推荐的方法可以直接对现有存储库执行此操作 但是 您可以
  • 为什么 PDO 异常错误没有被捕获?

    我有一个 PHP 脚本 在 SQL 查询语句中存在两个故意的拼写错误 try stmt dbh gt prepare SELECT COUNT FROM Product WHERE non existent column stmt gt b
  • 如何使用javascript的reduce函数来计算满足特定条件的项目的平均值?

    因此 假设我有以下对象数组 var arr name John score 8 8 name John score 8 6 name John score 9 0 name John score 8 3 name Tom score 7 9
  • 如何用纯css凹出一条直线

    diamond width 40px height 40px transform rotate 45deg background red div div 我正在尝试用 css 创建一个菱形 然而 我想要创建的菱形不是由直线组成的 而是由四条
  • 如何读取 .docx 文件? [关闭]

    Closed 这个问题需要多问focused help closed questions 目前不接受答案 我有一个 docx 文件 它包含许多我想要批量发送邮件的电子邮件地址 如何通过c 读取docx文件 最简单的方法可能是使用 Get 举
  • Delphi 编程中的枚举、常量、类常量

    我在 ClientDataSet 中有一个整数字段 我需要与一些值进行比较 如下所示 我可以使用常量 const mvValue1 1 mvValue2 2 if ClientDataSet Field AsInteger mvValue1
  • 为什么空行中的缩进不好?

    我知道的每个自由开源项目都有针对代码中尾随空格的规则 但我认为在下一行继续当前的缩进是很自然的 int main int a 42 return a 但 git 无论如何都会抛出警告 所以我的问题是 为什么这些选项卡inside目前的缩进不
  • GACUtil“程序集已成功添加到缓存”但“项目数 = 0”

    为什么 当我跑步时 gacutil i myAssembly dll 我得到 Assembly successfully added to the cache 但当我跑步时 gacutil l myAssembly dll I get Nu
  • Google 地图 KML:8 位十六进制代码

    我是 Google 地图和 KML 的新手 我的 KML 文件在地图上渲染多边形 但我想更改多边形上的填充颜色和多边形的线条颜色 问题是我无法以 8 位十六进制创建颜色 每当我认为我的颜色正确时 它的渲染效果就不像我想象的那样 我似乎无法在
  • 如何在 SQL 中取消透视? (SAP HANA)(列到行)

    我需要取消透视 SAP HANA 中的一些数据 我设置了一个示例表来尝试一下 但我仍然一无所获 实际的表包含 1000 个 ID 和大约 50 个列 但我想对许多表执行此操作 因此虽然我可以指定 FieldNames 原始列 但如果有一个自