Search Postgresql Archives

how to enforce index usage with +0

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hi,

In Oracle there are instances when as a developer I know how the data
is spread in the tables and I want to be sure the database uses the
right index.  Does the following hold true in Postgresql for a query
like this:

select s.order_id
from small_orders_table s, orders o
where s.find_these_id in
 (select some_id from some_table where some_indexed_field = 'ABC')
 and s.order_id+0 = o.order_id
 and date_trunc('microseconds', o.valid_until_dt) < now()

This should essentially use the s.some_indexed_field as the primary
index and hit the orders table on the order id.

The +0 and date_trunc is used purely to ensure the valid_unit_dt field
(which is indexed) is not used.

Is this efficient?

Does date_trunc render the index invalid or can I do something else
(+0) doesnt work.

thanks

Tim



[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Index of Archives]     [Postgresql Jobs]     [Postgresql Admin]     [Postgresql Performance]     [Linux Clusters]     [PHP Home]     [PHP on Windows]     [Kernel Newbies]     [PHP Classes]     [PHP Books]     [PHP Databases]     [Postgresql & PHP]     [Yosemite]
  Powered by Linux