zoukankan      html  css  js  c++  java
  • 【SQL优化】union、union all、or的使用

    如果查询上有索引,union all比or快,因为前者会利用索引查找,or会使索引失效;

    如果查询上没有索引,or比union快,因为前者查询引擎会一次性完成指令分析。

    —————————————————————————————————————————

    union all适用场合:1、如果合并多个select结果集,没有刻意要去除重复行

               2、如果union的各个select结果集,不存在交集

    Oracle数据库对union的内部处理过程:先执行union all操作获取所有的数据合集,再执行去除重复行操作,最后按照默认排序规则进行排序,即按照select后面的字段顺序排序的,先按照第一个字段排序,如果第一个字段相同,就安装第二个字段排序。

    union和union all关键字需要注意的问题是:必须保证各个select集合的结果有相同个数的列,并且每个列的类型是一样的,列名不一定要相同,oracle会将第一个结果的列名作为结果集的列名。

  • 相关阅读:
    linux下ssh使用
    CentOS 5.3使用minicom
    CentOS mysql
    CentOS下使用vsftpd
    Python处理json字符串转化为字典
    自己写的C#扫雷游戏(附源码)
    新伙伴
    成就了儿时一个简单的想法
    Sun VirtualBox vs. VMware Workstation
    DVDLogger源码——SQLite简单应用
  • 原文地址:https://www.cnblogs.com/AI-xiaocai/p/11675979.html
Copyright © 2011-2022 走看看