From: | Randolf Richardson <rr(at)8x(dot)ca> |
---|---|
To: | pgsql-general(at)postgresql(dot)org |
Subject: | Re: Index on array element |
Date: | 2003-11-27 04:47:42 |
Message-ID: | Xns943FD177CE26Drr8xca@200.46.204.72 |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-general |
[sNip]
> It's got nothing to do with arrays as such, but is purely a syntactic
> restriction: if the indexed item is anything but an unadorned column
> name or a function call, CREATE INDEX wants parentheses around it.
>
> This is because the CREATE INDEX syntax also allows for an "operator
> class" name in there. Consider
>
> create index foodex on foo (bar ! ops);
>
> Is this supposed to mean indexing the expression "bar ! ops" (infix !
> operator) or indexing the expression "bar !" (postfix ! operator) using
> the operator class "ops"? No way to tell, so we make you clarify your
> intent with parentheses. You can say either
>
> create index foodex on foo ((bar ! ops));
> create index foodex on foo ((bar !) ops);
>
> depending which interpretation you want.
Thanks. Your explanation is very helpful.
--
Randolf Richardson - rr(at)8x(dot)ca
Vancouver, British Columbia, Canada
Please do not eMail me directly when responding
to my postings in the newsgroups.
From | Date | Subject | |
---|---|---|---|
Next Message | Chris Travers | 2003-11-27 04:56:34 | Proposed project: Multimaster, synchronous replication system |
Previous Message | Tom Lane | 2003-11-27 03:41:17 | Re: disaster recovery |