Re: [GENERAL] Index using in jsonb query - Mailing list pgsql-general

From SuperCiccio
Subject Re: [GENERAL] Index using in jsonb query
Date
Msg-id 6fe09d5a-fa8c-419d-5005-e748980f4408@yahoo.it
Whole thread Raw
In response to Re: [GENERAL] Index using in jsonb query  (John R Pierce <pierce@hogranch.com>)
Responses Re: [GENERAL] Index using in jsonb query
List pgsql-general
This is a kind of document, there are many other kinds, with different json structure. So, a general index would be better.
But even if I create a specific index

CREATE INDEX on datatable (((jsonfield#>>'{path1,path2}')::numeric));

it isn't used in such a query; it is used in this query:

select field1,field2 from datatable where (jsonfield#>>'{path1,path2}')::numeric = 1000;

Definitely, I didn't find a way to optimize a query that checks a range in a json subfield.


On 3/11/2017 3:55 PM, SuperCiccio wrote:
Is there a way to make the following query use some sort of indexing?

select field1,field2 from datatable where (jsonfield#>>'{path1,path2}')::numeric < 1000;

if the '{path1,path2}' part is constant, I'd think you could create an index on (jsonfield #>> '{path1,path2}')::numeric


-- 
john r pierce, recycling bits in santa cruz


pgsql-general by date:

Previous
From: vod vos
Date:
Subject: Re: [GENERAL] How to define the limit length for numeric type?
Next
From: Francisco Olarte
Date:
Subject: Re: [GENERAL] Index using in jsonb query