0 0

db2中left join 的数据库执行计划3

在db2中,如以下语句:
SELECT * FROM ( select * from a order by a.c) left join (select * from b ) on  a.c = b.c)
其查询结果不一定是都是按a.c排序的,分析其原因:因最外层的语句没有order by语句,且DB2可能对这两个sql做了不同的优化处理(生成不同的访问计划),导致结果排序不一致,可是不知道db2的执行计划是怎么样的?为什么结果不一定是排序一致的?

问题补充:看了下最后加不加ORDER BY 执行计划是一样的,不清楚最后的结果为什么不能保证是一致的
2010年4月02日 11:47

2个答案 按时间排序 按投票排序

0 0

你这SQL让我写就是

SELECT * FROM a 
 left join b on  a.c = b.c
order by a.c

没看懂你在搞什么鬼.

2010年4月07日 17:31
0 0

看看DB2提供什么样的工具或命令查看sql语句的执行计划。

2010年4月02日 13:47

相关推荐

    DB2通用数据库SQL入门

    在学习DB2 SQL的过程中,理解SQL语句的执行顺序也很重要,比如分析(ANALYZE)、优化(OPTIMIZE)、执行计划(EXPLAIN)等概念。这些工具可以帮助你分析查询性能并优化SQL语句。 DB2还提供了存储过程(STORED ...

    IBM DB2通用数据库SQL入门

    - **视图**:可以视为一个虚拟表格,其内容由存储在数据库中的SQL查询结果构成。视图可以简化复杂的查询,也可以作为安全机制限制用户访问某些敏感数据。 ### 4. SQL 函数与表达式 - **聚合函数**:如SUM、COUNT、...

    IBM DB2数据库——SQL入门

    - **DB2 SQL**:介绍DB2数据库中的SQL语言基础,包括SQL的历史、特点及其在DB2中的应用。 - **SQL**:SQL(Structured Query Language)是一种用于管理关系数据库的标准编程语言,用于查询、更新、管理和控制数据库...

    IBM DB2官方课程CF12

    2. 数据操作:SQL中的JOIN操作将被详细介绍,用于合并多个表的数据,如INNER JOIN、LEFT JOIN、RIGHT JOIN和FULL JOIN。另外,子查询和联接查询也是重要的学习内容,它们在处理复杂查询时非常有用。 3. 分组和聚合...

    IBM DB2 v9.0 SQL帮助文档(英)

    此外,查询优化器会分析SQL语句并选择最优执行计划,了解其工作原理能帮助编写更高效的SQL。 5. **联接操作**:通过JOIN,可以合并来自多个表的数据。LEFT JOIN, RIGHT JOIN, INNER JOIN和FULL JOIN各有特点,根据...

    IBM DB2通用数据库入门基础

    - **SQL语言**:DB2支持标准的SQL(Structured Query Language)语言,用于管理数据库中的数据。 - **数据库对象**:在DB2中,主要的数据存储单元包括表(Table)、视图(View)、索引(Index)等。 - **安全性**:...

    DB2 通用数据库 SQL 入门

    根据提供的文件信息,我们可以归纳出一系列关于IBM DB2通用数据库SQL的基础知识点,这些知识点主要涵盖了DB2中的基本概念、常用SQL语句以及一些高级查询技巧等。以下是对这些知识点的详细解析: ### DB2 通用数据库...

    IBM_DB2通用数据库SQL入门

    - **数据操纵语句**:包括INSERT(插入)、UPDATE(更新)和DELETE(删除)等命令,用于改变数据库中的数据。 ### 3. 数据库对象 - **表**:表是数据库中最基本的数据存储单元,由行和列组成。每一行代表一条记录...

    IBM+DB2数据库的SQL手册

    通过深入学习这本IBM DB2数据库的SQL手册,开发者可以更熟练地在IBM DB2环境中设计、管理、查询和维护数据库,提升数据库系统的效率和稳定性。对于DBA和数据库开发者来说,这是一份不可或缺的参考资料。

    DB2联邦配置

    - 为`TESTDB`数据库中的`WORKITEM`表创建昵称:`CREATE NICKNAME ADMINISTRATOR.WORKITEM FOR TESTDB.DB2ADMIN.WORKITEM` 7. **执行联合查询**: - 现在可以在`SAMPLE`数据库中使用`TESTDB`数据库中的`WORKITEM`...

    本文档的知识和操作基本上基于DB2数据库

    在本文档中,我们将深入探讨基于 DB2 的一系列数据库操作,包括数据库的基本操作、表的操作、数据操作与事务处理、内置函数、多表查询、子查询以及其他的数据库对象,如视图、索引、序列,以及存储过程和触发器。...

    IBM DB2通用数据库SQL入门.pdf

    - **用途**: 主要用于执行数据库中的查询、更新、插入和删除操作。 - **特点**: 易于学习且功能强大,是所有数据库管理员(DBA)和开发人员必须掌握的核心技能之一。 **2. SQL基本语法** - **查询语句**: 使用...

    DB2-SQL.rar_db2

    1. **DML(Data Manipulation Language)**:在DB2中,DML语句包括INSERT、UPDATE、DELETE等,它们用于操作数据库中的数据。DB2支持复杂的子查询和多表联接,以及在UPDATE和DELETE语句中使用子查询,这使得数据处理...

    DB2兼容模式设置文档

    - **Left/Right Join**:DB2不支持Oracle中的`+`符号来表示左连接或右连接,而需使用标准的`LEFT JOIN`和`RIGHT JOIN`语法。 - **DUAL**:Oracle有一个内置的空表`DUAL`,在DB2中则需要手动创建一个名为`DUAL`的表...

    DB2 SQL 精粹

    2. 查询优化器:DB2内置的查询优化器自动选择最佳执行计划,但理解其工作原理有助于写出更高效的SQL。 3. 表和列统计信息:为优化器提供决策依据,定期更新统计信息有助于提高查询性能。 4. 物理存储:了解如何设置...

Global site tag (gtag.js) - Google Analytics