Re: [GENERAL] Planner statistics usage for composite type - Mailing list pgsql-general

From Dmitry Lazurkin
Subject Re: [GENERAL] Planner statistics usage for composite type
Date
Msg-id db8ab519-ad99-fb81-7471-00571536d213@gmail.com
Whole thread Raw
In response to Re: [GENERAL] Planner statistics usage for composite type  (Tom Lane <tgl@sss.pgh.pa.us>)
List pgsql-general
On 07/19/2017 06:37 PM, Tom Lane wrote:
> Dmitry Lazurkin <dilaz03@gmail.com> writes:
>> I am trying to find workaround for cross-column statistics.
>> ...
>> Worn estimate. Planner doesn't use statistics. In code I see usage of
>> function scalargtsel which returns default selectivity because
>> ROW('tag1', 0.9)::tag_sim is not Const.
> regression=# EXPLAIN ANALYZE SELECT * FROM tags WHERE ROW(t, s)::tag_sim >= '(tag1,0.9)'::tag_sim AND
> ROW(t, s)::tag_sim <= '(tag1,1.0)'::tag_sim;
>                                                       QUERY PLAN

>
----------------------------------------------------------------------------------------------------------------------
>  Index Scan using tags_composite on tags  (cost=0.29..8.30 rows=1 width=13) (actual time=0.051..0.051 rows=0 loops=1)
>    Index Cond: ((ROW(t, s)::tag_sim >= '(tag1,0.9)'::tag_sim) AND (ROW(t, s)::tag_sim <= '(tag1,1)'::tag_sim))
>  Planning time: 0.230 ms
>  Execution time: 0.110 ms
> (4 rows)

Thank you. (:



pgsql-general by date:

Previous
From: "David G. Johnston"
Date:
Subject: Re: [GENERAL] How to stop array_to_json from interpolating columnnames that weren't there
Next
From: Thomas Kellerer
Date:
Subject: [GENERAL] _page_cost parameter with values < 1