ORACLE MINUS 关键字的 ANSI SQL 标准

2024-04-10

我有一个查询,我想要与 ANSI SQL 标准兼容。在这个 使用 oracle 查询 MINUS key work,我想要 ANSI SQL 这是 放置于 MINUS 关键字

SELECT   'F' selected,
         UPPER ((   a.business
                 || ' '
                 || a.data_source
                 || ' '
                 || a.frequency
                 || ' '
                 || a.case_symbol
                )
               ) AS display_name,
         SUBSTR ((   a.business
                  || '_'
                  || a.data_source
                  || '_'
                  || a.frequency
                  || (CASE
                         WHEN a.case_symbol IS NULL
                            THEN ''
                         ELSE '_' || a.case_symbol
                      END
                     )
                 ),
                 0,
                 30
                ) AS summary_schema_name,
                 (SELECT ef.frequency_name
            FROM etl_frequencies@etlmgr_srv_ubatchh_lx ef
           WHERE ef.frequency = a.frequency) data_frequency_name,
         a.case_symbol subset_key, '' subset_name
    FROM (SELECT DISTINCT ebdf.business, ebdf.data_source, ebdf.frequency,
                          c.case_symbol
                     FROM  etl_bus_datasrc_frequencies@etlmgr_srv_ubatchh_lx ebdf INNER JOIN etl_rulesets@etlmgr_srv_ubatchh_lx er
                          ON (    ebdf.business = er.business
                              AND ebdf.data_source = er.data_source
                              AND ebdf.frequency = er.frequency
                             )
                          LEFT OUTER JOINe etl_db_output_fact_rules@etlmgr_srv_ubatchh_lx r
                          ON er.ruleset_id = r.ruleset_id
                          LEFT OUTER JOIN etl_db_output_fact_cases@etlmgr_srv_ubatchh_lx c
                          ON r.db_output_fact_rule_id =
                                                      c.db_output_fact_rule_id
          MINUS
          SELECT c.business_unit_key, e.data_source_key, f.data_frequency_key,
                 g.data_source_subset
            FROM  tb_module_summary_schema a INNER JOIN  tb_module b
                 ON a.module = b.module
                 INNER JOIN  tb_business_unit c
                 ON b.business_unit_id = c.business_unit_id
                 INNER JOIN  tb_summary_source_type d
                 ON a.summary_source_type_id = d.summary_source_type_id
                 INNER JOIN  tb_data_source e
                 ON d.data_source_id = e.data_source_id
                 INNER JOIN  tb_data_frequency f
                 ON d.data_frequency_id = f.data_frequency_id
                 LEFT OUTER JOIN  tb_data_source_subset g
                 ON d.data_source_subset_id = g.data_source_subset_id
                 ) a
ORDER BY a.business, a.data_source, a.frequency, a.case_symbol   

Oracle 21c 允许EXCEPT syntax. https://docs.oracle.com/en/database/oracle/oracle-database/21/sqlrf/Set-Operators.html在早期版本中,如果您无法使用MINUS,您可以使用此解决方法来模仿该功能:

select <columns>
  from (
        select 'SRC' as data_source, <columns>
          from source_table 
         union all
        select 'TRG' as data_source, <columns>
         from target_table
       )
 group by <columns>
having max(data_source) = 'SRC';
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

ORACLE MINUS 关键字的 ANSI SQL 标准 的相关文章

随机推荐

  • Django-Haystack 使用具有 IAM 凭证的 Amazon Elasticsearch 托管

    我希望使用 Amazon 的 Elasticsearch 服务器来支持 Django 数据库中长文本字段的搜索 然而 我也不想将此搜索暴露给那些没有登录并且不想通过模糊或某些 IP 限制策略来依赖安全性的人 除非它可以很好地与现有的 her
  • 核心数据并发`performBlockAndWait:` NSManagedObjectContext僵尸

    我发布的应用程序有以下崩溃报告 synchronizeMyWords方法从数据库中获取实体 使用主上下文父级创建私有队列上下文 最后保存结果 所有操作都在后台线程中进行 每次应用程序进入时都会调用此方法background and fore
  • 如何使用 geom_text() 标记 geom_bar(position = 'fill')

    经过相当长的一段时间搜索后 我没有找到解决我的问题的例子 如何使用 geom text 标记 geom bar position fill mydf data frame sample sample x LETTERS 1 3 size 1
  • 在 Linq to Entities 中编辑 DataGridView 单元格

    当我使用 Linq to Entities 将数据库中的数据绑定到 C 应用程序中的 DataGridView 时 我使 DataGridView 变为只读且无法编辑 是否可以编辑 DataGridView 中的数据以及保存在数据库中的更改
  • MLSLABEL Oracle 数据类型是什么?

    我在 Oracle 中遇到了一种奇怪的数据类型 称为MLSLABEL 它没有在数据类型文档中列出 并且仅对 可信预言机 无论是什么 有效 我能找到的文档是this http download oracle com docs cd B2835
  • MD5 输入/输出的最大长度

    可以进行 md5 哈希处理的字符串的最大长度是多少 或者 如果没有限制 如果有 md5 输出值的最大长度是多少 MD5 将任意长度的消息处理为 128 位的固定长度输出 通常表示为 32 个十六进制数字的序列
  • 在php中使用wkhtmltoimage

    当我在终端中使用 wkhtmltoimage 时 效果很好 但在php中使用时会出现一些问题 问题是 php代码 它有效 当我在终端中尝试相同的命令时 它也运行良好 但是当我尝试其他链接时 它无法正常工作
  • Flex、AIR:在指定文件夹中搜索 .pdf 文件

    我需要 ActionScriot 代码来解析给定文件夹并在其中搜索 txt 文件 任何链接或代码示例都会有所帮助 Adobe Flex 3 3 AIR 谢谢 斯里 There var docs File File documentsDire
  • 如何让 GIT 默认为我的主文件夹?

    我刚刚在连接到工作域的工作计算机 Windows 7 上安装了 GIT 当我启动 GIT bash 时 它从 H 开始 而不是在我的主文件夹中 我认为当我未连接到域时这可能是一个问题 因为 ssh 文件夹位于 H 而不是我的主文件夹 我已将
  • PHP 以指数形式输出数字

    当我输出一些双变量时 它们会使用 fwrite 以指数形式写入 我可以在 PHP 中设置一些默认值 每当显示 复制或存储 变量时它总是以十进制格式出现吗 准确地说 当我在包含双精度值 不是指数形式 的 json 字符串上使用 json de
  • Java中可以从构造函数中调用抽象方法吗? [复制]

    这个问题在这里已经有答案了 假设我有一个实现 Runnable 接口的抽象基类 public abstract class Base implements Runnable protected int param public Base f
  • Bootstrap 中心对齐下拉​​菜单

    我的页面中央有一个下拉按钮 但是当我单击下拉菜单时 实际的下拉部分仍然位于页面的左侧 有什么问题吗 HTML div class row div class col md 12 school options dropdown div cla
  • ManualResetEvent 处于等待状态时会消耗 cpu 吗?

    更具体地说 上下文切换的性能下降是否适用于处于等待状态的线程 在什么条件或情况下 ManualResetEvent 或 WaitHandle 可能会消耗资源 ManualResetEvent 没有等待状态 唯一可以等待 MRE 的是thre
  • 在 scikit-learn Pipeline 中插入或删除步骤

    是否可以删除或插入步骤sklearn pipeline Pipeline object 我正在尝试在 Pipeline 对象中有或没有一步进行网格搜索 想知道我是否可以在管道中插入或删除一个步骤 我看到在Pipeline源代码 有一个sel
  • 从 eclipse 的内部浏览器打开网站?

    谁能帮助我从 Eclipse 的内部 嵌入式 浏览器中打开网页 我正在与浏览器并行运行 Linux 平铺窗口管理器 和 Eclipse 3 7 2 这很痛苦 我希望它能够轻松地从我的代码中读取需求 同时读取代码 这可能是超级用户的问题 但它
  • mocha done() 和 async wait 的矛盾问题

    我有以下测试用例 it should pass the test async function done await asyncFunction true should eq true done 运行它断言 错误 解决方法指定过多 指定回调
  • 是否可以在 Monotouch 中使用 NSZombieEnabled?

    我一直在阅读有关环境变量的信息NSZombieEnabled http www cocoadev com index pl NSZombieEnabled我想知道目前是否可以在 Monotouch 运行时中使用它 如果没有 是否有合适的替代
  • 以编程方式设置打印机功能

    我正在开发一个 C 桌面应用程序 我需要更改一些打印机设置并打印一些图片 在我的程序中 我已经可以设置纸张尺寸 打印机名称等 如果我进入打印机首选项的高级选项 有一个名为 打印机功能 的部分 我不知道如何访问打印机设置中的参数 例如 有 边
  • sudoers 是世界可写错误[关闭]

    Closed 这个问题是无关 help closed questions 目前不接受答案 我更改了 Ubuntu 12 10 上的 ect 文件权限 以便我可以编辑 bash bashrc 以便 Neo4j 可以看到 JVM 但现在当我尝试
  • ORACLE MINUS 关键字的 ANSI SQL 标准

    我有一个查询 我想要与 ANSI SQL 标准兼容 在这个 使用 oracle 查询 MINUS key work 我想要 ANSI SQL 这是 放置于 MINUS 关键字 SELECT F selected UPPER a busine