字体
第(6/6)页
关灯
   存书签 书架管理 返回目录
内层查询之后,外层查询

    才能介入。即使优化器选择把整个查询作为哈希连接(hash join)执行——这是聪明的方法——

    也不例外,因为要进行哈希连接,SQL 引擎必须先进行表扫描以建立哈希数组(hash array)。

    相比之下,使用集合cāo作符union、intersect或except时,查询中的这些组成部分不会彼此依赖,

    从而不同部分的查询可以并行执行。当然,如果有个步骤非常慢,而其他步骤非常快,则并行

    化意义不大;另外,如果查询的两个部分工作完全相同,并行化就没有好处,因为不同进程的

    工作是重复的,而不是分工负责。一般而言,在最后步骤之前,让所有部分并行执行会很高效,

    最后步骤把不完整的结果集组合起来——这就是分而治之。

    集合cāo作符的使用有个额外的问题:各部分查询必须返回兼容的字段—— 字段的类型和数量

    都要相同。下例(实际案例,来自账单程序)通常不适合集合cāo作符:

    select whatever,

    松语文学免费小说阅读_www.16sy.com
上一页 目录 下一章