2

以选择为例,

select user_id, email_address
from users
     join email on users.id = email.user_id

这会产生结果

ANDY   |  andy_one@foo-bar.com
ANDY   |  andy_two@foo-bar.com
JOE    |  joe_one@foo-bar.com
JOE    |  joe_two@foo-bar.com

如果未提供排序依据,Andy 和 Joes 的电子邮件是否保证在结果中组合在一起?我正在构建一个应用程序,将这些连接在一起并流式传输结果。我需要知道我是否需要明确提供 order by 子句并对其性能造成影响。:)

4

1 回答 1

4

不,保证结果顺序的唯一方法是明确指定一个ORDER BY子句。

但是,添加 anORDER BY并不一定会影响性能。如果查询计划将返回有序的结果(例如,因为您正在取消索引),Oracle 知道它不需要进行额外的排序。

于 2013-02-20T04:46:21.153 回答