问题描述
大家好,
我在和一个观点作斗争。视图的结果可以是具有相同字段的3个不同视图中的1行。
有人可以指出正确的方向,请如何思考?:)
非常基本,这是我的问题:
我不需要完整的代码,只是正确方向的提示;)。
提前谢谢。
我在和一个观点作斗争。视图的结果可以是具有相同字段的3个不同视图中的1行。
有人可以指出正确的方向,请如何思考?:)
非常基本,这是我的问题:
/* MAINVIEW */ SELECT * FROM (SELECT * FROM VIEW1) --returns n rows /* IF VIEW1 IS EMPTY THEN SELECT ALL FROM VIEW2 */ (SELECT * FROM VIEW2) -- returns n rows /* IF VIEW2 IS EMPTY THEN SELECT VIEW3 (=HAS ALWAYS DATA) */ (SELECT * FROM VIEW3) -- returns 1 row复制
我不需要完整的代码,只是正确方向的提示;)。
提前谢谢。
专家解答
这样的东西可能会工作:
虽然它导致运行view1查询三次和view2查询两次,所以可能会很慢。
接受这些视图的基础查询并将不存在检查写入这些视图可能会更快。或者可能有更好的方法,没有示例表和数据很难说。
select * from view1 union all select * from view2 where not exists ( select * from view1 ) union all select * from view3 where not exists ( select * from view1 ) and not exists ( select * from view2 )复制
虽然它导致运行view1查询三次和view2查询两次,所以可能会很慢。
接受这些视图的基础查询并将不存在检查写入这些视图可能会更快。或者可能有更好的方法,没有示例表和数据很难说。
文章转载自ASKTOM,如果涉嫌侵权,请发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。
评论
相关阅读
【纯干货】Oracle 19C RU 19.27 发布,如何快速升级和安装?
Lucifer三思而后行
743次阅读
2025-04-18 14:18:38
Oracle RAC 一键安装翻车?手把手教你如何排错!
Lucifer三思而后行
644次阅读
2025-04-15 17:24:06
Oracle数据库一键巡检并生成HTML结果,免费脚本速来下载!
陈举超
565次阅读
2025-04-20 10:07:02
【ORACLE】你以为的真的是你以为的么?--ORA-38104: Columns referenced in the ON Clause cannot be updated
DarkAthena
514次阅读
2025-04-22 00:13:51
【活动】分享你的压箱底干货文档,三篇解锁进阶奖励!
墨天轮编辑部
510次阅读
2025-04-17 17:02:24
【ORACLE】记录一些ORACLE的merge into语句的BUG
DarkAthena
495次阅读
2025-04-22 00:20:37
一页概览:Oracle GoldenGate
甲骨文云技术
478次阅读
2025-04-30 12:17:56
火焰图--分析复杂SQL执行计划的利器
听见风的声音
436次阅读
2025-04-17 09:30:30
3月“墨力原创作者计划”获奖名单公布
墨天轮编辑部
381次阅读
2025-04-15 14:48:05
OR+DBLINK的关联SQL优化思路
布衣
370次阅读
2025-05-05 19:28:36