I have 2 columns index. The question is if optimizer can use both columns of an index or not, i.e. the plan should read like this:
Index Cond: ((name)::text = 'name1'::text) AND ((date_from)::timestamp with time zone= ('now'::text)::timestamp(6) with time zone) Whilst I am getting index scan on first column and filter on the other: Index Scan using testtab_name_date_from on testtab (cost=0.00..2.01 rows=1 width=18) Index Cond: ((name)::text = 'name1'::text) Filter: ((date_from)::timestamp with time zone = ('now'::text)::timestamp(6)with time zone) Could the problem be timestamp column or timestamp with time zones? Thank you, Laimis ------------------------------------------- Bellow are details of the test: Create table testtab (name varchar(10), date_from timestamp); create index testtab_name_date_from on testtab(name, date_from) ; populated table with pseudo random data (10000), analyzed and tuned optimizer to favour indexes instead of sequential scans. Pg config: random_page_cost = 0 cpu_index_tuple_cost = 0.0 enable_seqscan = false cpu_tuple_cost = 1 ---------------------------(end of broadcast)--------------------------- TIP 6: Have you searched our list archives? http://archives.postgresql.org