oracle插入未调用并行,Oracle-插入顺序是否影响查询顺序

测试一

创建带有时间格式字段的表,从小到大循环插入2020年每一天。

不加排序查询表中数据发现,数据并没有按照从小到大显示,第一行是2020-10-12。

推测插入顺序不影响查询顺序。

8982f84a386a90d7137f8737c90bf1d8.png

测试二

CREATE TABLE AS SELECT FROM 测试一的表 ORDER BY 日期,创建新表。

不加排序查询表中数据发现,新建的表数据按照从小到大显示。第一行是2020-01-01。

推测CREATE TABLE AS 在分配空间时整体划分,地址连续,所以查询时根据创建时的顺序显示。

cdfcefc041300af8c7284a033c904b14.png

测试三

清空测试二创建的表,改为INSERT INTO SELECT * FROM 测试一的表

不加排序查询表中数据发现,第一行是2020-07-18

清空测试二创建的表,改为INSERT INTO SELECT * FROM 测试一的表  ORDER BY 日期

不加排序查询表中数据发现,第一行是2020-10-19

再次清空测试二创建的表,INSERT INTO SELECT * FROM 测试一的表  ORDER BY 日期

不加排序查询表中数据发现,第一行是2020-10-10

总结

插入顺序不影响查询顺序,插入时Oracle查询可用块存储数据,块的位置是随机的,所以数据的顺序无法确认。

CREATE命令在执行时捕获满足表大小的块,一次性分配地址,所以查询时数据是连续的。

发现

测试一中,单独查询RQ字段,则数据是从小到大显示的,测试三中并未出现此情况。

原因,测试一中RQ字段为索引,所以在查询是数据按照索引情况展示了。

ce0c5ff45e3f8f5b58ed19242ad7c5fb.png

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值