1. 行迁移 当发出update导致记录行长增加,block的剩余空间不足以存放这条记录,就会产生行迁移,发生行迁移时rowid不会改变,原来的block 中会用一个指针存放这条记录在新的block中的地址,发生行迁移会对性能产生影响,因为读这条记录会读两个BLOCK。 行迁移:导致应用需要访问更多 ...
分类:
数据库 时间:
2016-07-19 15:32:37
阅读次数:
190
经常有这样一个业务场景,我们在同一张表中有重复的记录,我们要删除重复的记录,这篇文章就是用来解决这个问题的,用的方法是我目前遇到的效率最高的方法(如果有更好的方法欢迎网友提供)。这个方法会用到了rowid,下面简单介绍一下rowid的定义 1、ROWID定义 ROWID:数据库中行的全局唯一地址 对 ...
分类:
数据库 时间:
2016-07-08 10:09:10
阅读次数:
274
ctid: 表示数据记录的物理行当信息,指的是 一条记录位于哪个数据块的哪个位移上面。 跟oracle中伪列 rowid 的意义一样的;只是形式不一样。 例如这有个一表test;查看每行记录的ctid情况 mydb=> select ctid,* from test; ctid | id | nam ...
分类:
数据库 时间:
2016-06-24 10:32:44
阅读次数:
470
1. ROW_NUMBER() 的分页方法 DECLARE @currentPage INT =2,@pageSize INT =5; WITH cte AS( SELECT ROW_NUMBER() OVER(ORDER BY OrderId desc) rowid,* FROM dbo.EC_O ...
分类:
数据库 时间:
2016-06-23 14:19:46
阅读次数:
243
1、查找表中多余的重复记录,重复记录是根据单个字段(peopleId)来判断 2、删除表中多余的重复记录,重复记录是根据单个字段(peopleId)来判断,只留有rowid最小的记录 3、查找表中多余的重复记录(多个字段) 4、删除表中多余的重复记录(多个字段),只留有rowid最小的记录 5、查找 ...
分类:
数据库 时间:
2016-06-17 09:50:54
阅读次数:
182
ORACLE基本数据类型(亦叫内置数据类型 built-in datatypes)可以按类型分为:字符串类型、数字类型、日期类型、LOB类型、LONG RAW& RAW类型、ROWID & UROWID类型。 在讲叙字符串类型前,先要讲一下编码。字符串类型的数据可依编码方式分成数据库字符集(CHAR ...
分类:
数据库 时间:
2016-06-15 19:15:55
阅读次数:
349
select t.*, t.rowid from t_dept_type t 部门select t.*, t.rowid from t_company t 公司select t.*, t.rowid from t_employees t 员工 select a.departmentid,a.user ...
分类:
数据库 时间:
2016-06-15 01:36:12
阅读次数:
234
一、 dual是一个虚拟表,用来构成select的语法规则,oracle保证dual里面永远只有一条记录。我们可以用它来做很多事情,如下: 1、查看当前用户,可以在 SQL Plus中执行下面语句 select user from dual; 2、用来调用系统函数 select to_char(sy ...
分类:
其他好文 时间:
2016-06-14 19:31:24
阅读次数:
146
bulk批量删除数据1.案列介绍需要在一个1亿行的大表中,删除1千万行数据需求是在对数据库其他应用影响最小的情况下,以最快的速度完成如果业务无法停止的话,可以参考下列思路:根据ROWID分片、再利用Rowid排序、批量处理、回表删除在业务无法停止的时候,选择这种方式,的确是..
分类:
其他好文 时间:
2016-06-13 19:26:45
阅读次数:
330