立即学习:https://edu.csdn.net/course/play/3574/62096?utm_source=blogtoedu
通过ROWID(相对唯一地址)查询得到一串数据以“AAAR3qAAEAAAACHAAA”为例
ROWID组成:
1.数据对象变编号 AAAR3q
2.数据文件编号 AAE
3.数据保存的块号 AAAACH
4.数据保存的行号 AAA
实例:某张表中有许多完全重复的数据,要求把重复数据删除,只留最早的一条数据
分析:
1.不能直接使用删除语句,这样会把所有满足条件的数据全部删除
2.最早录入的ROWID一定是最小的,使用MIN()函数
3.因为数据有重复,可以考虑分组
SELECT MIN(ROWID) FROM 表名 GROP BY 重复数据的字段---->查出所有不重复的数据
4.再使用NOT IN删除其他数据,结果为
DELETE FROM 表名 WHERE(
SELECT MIN(ROWID)
FROM 表名
GROP BY 重复数据的字段
);
后期索引中会使用