From: | Stefan Keller <sfkeller(at)gmail(dot)com> |
---|---|
To: | Sergey Konoplev <gray(dot)ru(at)gmail(dot)com> |
Cc: | pgsql-general List <pgsql-general(at)postgresql(dot)org> |
Subject: | Re: hstore equality-index performance question |
Date: | 2010-03-30 15:27:17 |
Message-ID: | 25bc040b1003300827r436c2534je3cad9a1f8571559@mail.gmail.com |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-general |
You are right, my negligence.
I'm trying to optimize the latter query:
# SELECT id, (kvp->'a') FROM mytable WHERE kvp ? 'a';
...or something like this (which also involves the '->' operator)
# SELECT id FROM mytable WHERE (kvp->'a') = 'x';
-S.
2010/3/29 Sergey Konoplev <gray(dot)ru(at)gmail(dot)com>:
>> My question is, if one can get also index support for the '->' operator?
>
> I am not sure what do you mean.
>
>>>> SELECT id, (kvp->'a') FROM mytable;
>>>>
>>>> ... can be accelerated nevertheless by adding following where clause:
>>>>
>>>> SELECT id, (kvp->'a') FROM mytable WHERE kvp ? 'a';
>>>>
>>>> => Is this correct?
>
> These queries could return completely different result sets. First
> query returns all the records with the value of kvp->'a' if kvp has
> 'a' key and NULL otherwise. Second one returns only those records
> where kvp has 'a' key.
>
> --
> Sergey Konoplev
>
> Blog: http://gray-hemp.blogspot.com /
> Linkedin: http://ru.linkedin.com/in/grayhemp /
> JID/GTalk: gray(dot)ru(at)gmail(dot)com / Skype: gray-hemp / ICQ: 29353802
>
From | Date | Subject | |
---|---|---|---|
Next Message | Tom Lane | 2010-03-30 15:43:53 | Re: hstore equality-index performance question |
Previous Message | Joshua Berry | 2010-03-30 15:03:11 | User action accounting |