问题描述
嗨,
我有27个不同的查询,所有这些查询最多产生3行。像这样的东西:
和
显然,where子句可能要复杂得多,但是所有查询都返回 (最多3个) CUSTOMER_NUMBER行。
如何在一个表中显示所有查询 _ 像这样:
这可能吗?(如果更容易的话,我也会对转置表感到满意)。
请注意,如果我简单地使用 “UNION” 或 “与”,我从查询1中获取三行 _ times _ 查询2中的三行...
非常感谢!
菲利普
我有27个不同的查询,所有这些查询最多产生3行。像这样的东西:
SELECT CUSTOMER_NUMBER FROM customer WHERE name = 'SomeName' order by CUSTOMER_NUMBER fetch first 3 rows only;复制
和
SELECT CUSTOMER_NUMBER FROM customer WHERE dateOfBirth < TO_DATE('01.01.2000', 'dd.mm.yyyy') order by CUSTOMER_NUMBER fetch first 3 rows only;复制
显然,where子句可能要复杂得多,但是所有查询都返回 (最多3个) CUSTOMER_NUMBER行。
如何在一个表中显示所有查询 _ 像这样:
Customer Number 1 Customer Number 2 Customer Number 3 Query 1 a b c Query 2 d e f Query 3 g h ...复制
这可能吗?(如果更容易的话,我也会对转置表感到满意)。
请注意,如果我简单地使用 “UNION” 或 “与”,我从查询1中获取三行 _ times _ 查询2中的三行...
非常感谢!
菲利普
专家解答
您可以将所有查询联合在一起,并对结果进行透视:
with rws as ( ( select distinct 'Q1' q, owner from dba_tables order by owner fetch first 3 rows only ) union all ( select distinct 'Q2' q, sequence_owner from dba_sequences order by sequence_owner fetch first 3 rows only ) ), rns as ( select q, owner, row_number () over ( partition by q order by owner ) rn from rws ) select * from rns pivot ( min ( owner ) for rn in ( 1, 2, 3 ) ); Q 1 2 3 Q1 APPQOSSYS AUDSYS CHRIS Q2 CHRIS CO CTXSYS复制
文章转载自ASKTOM,如果涉嫌侵权,请发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。
评论
相关阅读
【纯干货】Oracle 19C RU 19.27 发布,如何快速升级和安装?
Lucifer三思而后行
686次阅读
2025-04-18 14:18:38
Oracle RAC 一键安装翻车?手把手教你如何排错!
Lucifer三思而后行
635次阅读
2025-04-15 17:24:06
Oracle数据库一键巡检并生成HTML结果,免费脚本速来下载!
陈举超
546次阅读
2025-04-20 10:07:02
【活动】分享你的压箱底干货文档,三篇解锁进阶奖励!
墨天轮编辑部
493次阅读
2025-04-17 17:02:24
【ORACLE】记录一些ORACLE的merge into语句的BUG
DarkAthena
490次阅读
2025-04-22 00:20:37
【ORACLE】你以为的真的是你以为的么?--ORA-38104: Columns referenced in the ON Clause cannot be updated
DarkAthena
480次阅读
2025-04-22 00:13:51
一页概览:Oracle GoldenGate
甲骨文云技术
469次阅读
2025-04-30 12:17:56
火焰图--分析复杂SQL执行计划的利器
听见风的声音
418次阅读
2025-04-17 09:30:30
3月“墨力原创作者计划”获奖名单公布
墨天轮编辑部
372次阅读
2025-04-15 14:48:05
OR+DBLINK的关联SQL优化思路
布衣
357次阅读
2025-05-05 19:28:36