Re: possible to create multivalued index from xpath() results in 8.3? - Mailing list pgsql-general

From Tom Lane
Subject Re: possible to create multivalued index from xpath() results in 8.3?
Date
Msg-id 12829.1195586982@sss.pgh.pa.us
Whole thread Raw
In response to Re: possible to create multivalued index from xpath() results in 8.3?  ("Matt Magoffin" <postgresql.org@msqr.us>)
Responses Re: possible to create multivalued index from xpath() results in 8.3?  ("Matt Magoffin" <postgresql.org@msqr.us>)
List pgsql-general
"Matt Magoffin" <postgresql.org@msqr.us> writes:
> Should the xpath() function return 3 individual text nodes like this:

> /elem[@key="mykey"]/text() => {
>   value1,
>   value2,
>   value3
> }

> rather than concatenating these into a single text node result?

AFAICT that's exactly what it does.

regression=#  select xpath('//foo[@key="mykey"]/text()', '<value>ABC<foo key="mykey">XYZ</foo></value><foo
key="mykey">RST</foo><foo>DEF</foo>');
   xpath
-----------
 {XYZ,RST}
(1 row)

regression=#

Of course this is of type xml[], but you can cast to text[] and then
index.

            regards, tom lane

pgsql-general by date:

Previous
From: Vivek Khera
Date:
Subject: Re: postgresql storage and performance questions
Next
From: "Sander Steffann"
Date:
Subject: Re: IP addresses