Index Using
От | Michal Hlavac |
---|---|
Тема | Index Using |
Дата | |
Msg-id | 40FB9B77.1080208@medium13.sk обсуждение исходный текст |
Ответы |
Re: Index Using
Re: Index Using |
Список | pgsql-general |
hello, I have in db table with 3 columns... table name is l_model_to_part columns: i_model_id, i_part_id, i_year I have index on every column separately and primary key is (i_model_id, i_part_id, i_year) when I use: EXPLAIN SELECT * FROM l_model_to_part WHERE i_part_id=234; QUERY PLAN ---------------------------------------------------------------------------------- Index Scan using index_20 on l_model_to_part (cost=0.00..3.37 rows=10 width=12) Index Cond: (i_part_id = 234) when I use: EXPLAIN SELECT * FROM l_model_to_part WHERE i_model_id=234; QUERY PLAN --------------------------------------------------------------------- Seq Scan on l_model_to_part (cost=0.00..1400.59 rows=866 width=12) Filter: (i_model_id = 234) but, when I use: EXPLAIN SELECT * FROM l_model_to_part WHERE i_model_id=234 AND i_model_id=456; QUERY PLAN ----------------------------------------------------------------------------------- Index Scan using index_50 on l_model_to_part (cost=0.00..41.84 rows=11 width=12) Index Cond: ((i_model_id = 234) AND (i_model_id = 456)) my question is, why postgres doesn't use index_50 in second query??? when I create this structure in clear db, everything is all right... thanx, hlavki -- [ miso hlavac ][ hlavki@medium13.sk ][ http://hlavki.sk ] [ icq:94900232 ][ callto://hlavki ]
В списке pgsql-general по дате отправления: