From: | Guillaume Lelarge <guillaume(at)lelarge(dot)info> |
---|---|
To: | Samuel ROZE <samuel(dot)roze(at)aliceadsl(dot)fr> |
Cc: | pgsql-fr-generale(at)postgresql(dot)org |
Subject: | Re: Recherche dans les tableaux |
Date: | 2008-10-22 13:35:39 |
Message-ID: | 48FF2C2B.7000802@lelarge.info |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-fr-generale |
Samuel ROZE a écrit :
> [...]
> J'ai appris il y a quelques jours la possibilité de faire des tableaux
> directement dans les tables. Je trouve ce principe très intéressant,
> surtout dans le cas de mon utilisation.
>
> Seulement, pour réellement justifier l'utilisation de cette "nouvelle"
> technique de rangement dans la base de données, je voudrais savoir si je
> peux faire une recherche dans une table en fonction d'une valeur d'un
> tableau. Par exemple, j'ai admettons un champ "champs" (integer[]) dans
> ma table "fermiers". Je veux savoir à qui est le champ n°12... Puis-je
> faire une recherche du type:
> SELECT nom FROM public.fermiers WHERE champs[*] = 12;
> (cette requête ne marche pas :( )
SELECT nom FROM public.fermiers WHERE 12 = ANY (champs);
Voir http://docs.postgresql.fr/8.3/arrays.html pour plus de détails.
> Si ce n'est pas possible, je sais bien que je peux faire une table table
> qui contiendras la "relation" entre la table "champs" et la table
> "fermiers" par exemple.
>
C'est souvent plus intéressant car indexable. Il y a bien le module
contrib intarray (http://docs.postgresql.fr/8.3/intarray.html) mais bon...
--
Guillaume.
http://www.postgresqlfr.org
http://dalibo.com
From | Date | Subject | |
---|---|---|---|
Next Message | Samuel ROZE | 2008-10-22 13:36:28 | Re: Recherche dans les tableaux |
Previous Message | Ludovic Levesque | 2008-10-22 13:34:54 | Re: Recherche dans les tableaux |