Обсуждение: Query-ing arrays

Поиск
Список
Период
Сортировка

Query-ing arrays

От
Jon Lapham
Дата:
Stupid FAQ probably:

Is it possible to query an array for an item WITHOUT KNOWING where in the
array the item might be held?

For example, I have a tbale with the following character array:
> category char(3)[],

I would like to find all records in which 'category' contains an array
element of a certain type, like maybe 'xxx' for instance.  So, for a
particular record, 'category' may be set to '{'gfe','qwe','xcs','xxx'}'

I cannot do:
SELECT * FROM blah WHERE category[4]='xxx';
because I do not know that the 'xxx' will always be in the 4th position.

Suggestions?  TIA, Jon

-- 

-**-*-*---*-*---*-*---*-----*-*-----*---*-*---*-----*-----*-*-----*---Jon LaphamCentro Nacional de Ressonancia
MagneticaNuclear de MacromoleculasUniversidade Federal do Rio de Janeiro (UFRJ) - Brasilemail:
jlapham@gandalf.bioqmed.ufrj.br 
 
***-*--*----*-------*------------*--------------------*---------------


Re: Query-ing arrays

От
Stephan Szabo
Дата:
I'd suggest checking the array utilities in contrib.  I believe
it has functions/operators for element in set.

Stephan Szabo
sszabo@bigpanda.com

On Fri, 1 Sep 2000, Jon Lapham wrote:

> Stupid FAQ probably:
> 
> Is it possible to query an array for an item WITHOUT KNOWING where in the
> array the item might be held?
> 
> For example, I have a tbale with the following character array:
> > category char(3)[],
> 
> I would like to find all records in which 'category' contains an array
> element of a certain type, like maybe 'xxx' for instance.  So, for a
> particular record, 'category' may be set to '{'gfe','qwe','xcs','xxx'}'
> 
> I cannot do:
> SELECT * FROM blah WHERE category[4]='xxx';
> because I do not know that the 'xxx' will always be in the 4th position.



Re: Query-ing arrays

От
Jon Lapham
Дата:
On Fri, Sep 01, 2000 at 09:07:35AM -0700, Stephan Szabo wrote:
> 
> I'd suggest checking the array utilities in contrib.  I believe
> it has functions/operators for element in set.

Thanks, that looks like exactly what I need.  I wonder if someone could
put a reference to this array utility package in the manual, chapter 8, on
arrays.

Maybe something like this: 
For more complex work with arrays, see Massimo Dal Zotto's contrib package
'array_iterator'.  This loadable module "...defines a new class of
functions which take an array and a scalar value, iterate a scalar
operator over the elements of the array and the value, and compute a
result as the logical OR or AND of the iteration results."

-- 

-**-*-*---*-*---*-*---*-----*-*-----*---*-*---*-----*-----*-*-----*---Jon LaphamCentro Nacional de Ressonancia
MagneticaNuclear de MacromoleculasUniversidade Federal do Rio de Janeiro (UFRJ) - Brasilemail:
jlapham@gandalf.bioqmed.ufrj.br 
 
***-*--*----*-------*------------*--------------------*---------------