8 ms·
I am talking about INDEX FAST FULL SCAN (Oracle) for example. If you do 'select distinct last_name from users;' and you have an index on users (last_name) you d
by n0tme 7y ago
I am talking about INDEX FAST FULL SCAN (Oracle) for example. If you do 'select distinct last_name from users;' and you have an index on users (last_name) you do not need to read the table at all. It is enough to read the index.
Otherwise it does not matter how many columns you select, because you will have to read all the columns for every row anyway.
- adamzochowski 7y ago> Otherwise it does not matter how many columns you select, because you will have to read all the columns for every row anyway. It does matter. An index can actually contain a cache of values for some columns. This is done with INCLUDE statement. CREATE INDEX idx ON book ( author_id ) INCLUDE ( book_title ) This select will use only index: select author_id, book_title from books where author_id = 123 This select will use index, and then have to follow and fetch data out of rows: select * from books where author_id = 123 https://use-the-index-luke.com/blog/2019-04/include-columns-in-btree-indexes https://use-the-index-luke.com/blog/2019-04/include-columns-...