1. 全表扫描(seq scan)
把表的所有数据块从头到尾读一遍,找到符合条件的数据。
explain select * from "Family1" where "ID" > 4;
2.索引扫描(Index Scan)
在索引中找到需要的数据行的物理位置,然后再到表的数据块中把相应的数据读出来。
explain select * from "Family1" where "ID" = 4;
3.位图扫描(Bitmap Heap Scan)
扫描索引,把满足条件的行在内存中建一个位图,再根据位图到表的数据文件中把相应的数据读出来。 如果有两个索引,可以把两个索引形成的位图and或or计算,合并成一个位图,再到表的数据文件中把数据读出来。
explain select * from "Family1" where "ID" in (2,46,8);