Re: json indexing and data types - Mailing list pgsql-general

From Jeff Janes
Subject Re: json indexing and data types
Date
Msg-id CAMkU=1xz7+boe3-1Z4P-oq89Ma-rv77zpUg4Nw1Xrj6QN=ZRCw@mail.gmail.com
Whole thread Raw
In response to Re: json indexing and data types  (Tom Lane <tgl@sss.pgh.pa.us>)
List pgsql-general
On Wed, Dec 2, 2015 at 8:04 PM, Tom Lane <tgl@sss.pgh.pa.us> wrote:
> Merlin Moncure <mmoncure@gmail.com> writes:
>> On Wed, Dec 2, 2015 at 12:03 AM, Kaare Rasmussen <kaare@jasonic.dk> wrote:
>>> As json essentially only has three basic data types, string, int, and
>>> boolean, I wonder how much of this - to index, search, and sort on
>>> unstructured data -  is possible.
>
>> I feel your pain.  jsquery is superb for subdocument searching on
>> *specific* subdocuments but range searching is really limited.
>
> Yeah.  The problem here is that a significant part of the argument for
> the JSON/JSONB datatypes was that they adhere to standards (RFC 7159 in
> particular).  I can't see us accepting a patch that changes them into
> JSON-plus-some-PG-enhancements.
>
> For cases where you know that specific sub-fields can be expected to be
> of particular datatypes, I think you could get a lot of mileage out of
> functional indexes ... but you'd have to write your queries to match the
> indexes, which could be painful.

If you create a view which has columns defined according to the index
expression, it does remove a lot of the pain of making queries that
use those expressions.  It looks just like using a real column, as
long as you don't update it.

Cheers,

Jeff


pgsql-general by date:

Previous
From: Jim Nasby
Date:
Subject: Re: JSONB performance enhancement for 9.6
Next
From: Jim Nasby
Date:
Subject: Re: Pgbasebackup help