今天才在网上看到去重复项的用select distinct* from table_a 这样的写法比较简单,不过我以前都是通过
select * from table_a
union
select * from table_a
where 1=2
这个方法来去重复项,都是靠union的排序来完成,真的很不错,这样在排序时同时去掉了重复项的效率还是比较高,
通过pl/sql来测试发现distinct*的时间要长一些,union的方式时间短一些,时间也差不了太多。
以前在网上看select count(*) from table 这个函数的就会全表去扫描,如果table 的字段里有加索引的话,通过索引的字段去统计的话速度还是会快上很多的,因为这时就会通过index_fast_full_scan,所以统计时,用有索引字段还代替* ,这样的速度会快上一些。