Vous n'êtes pas identifié(e).
- Contributions : Récentes | Sans réponse
Pages : 1
#1 08/12/2008 14:49:03
- frinux
- Membre
trier un tableau d'éléments composites en pl/pgsql
Bonjour,
je construis dans une procédure stockée un tableau d'éléments composites :
DROP TYPE IF EXISTS horaire_periode CASCADE;
CREATE TYPE horaire_periode AS
(
date_debut timestamp without time ZONE,
date_fin timestamp without time ZONE,
est_particulier BOOLEAN,
est_travaille BOOLEAN
);
ALTER TYPE horaire_periode OWNER TO "admin";
--> periodes horaire_periode[];
J'aimerai trier ce tableau selon le critère date_debut par exemple. J'ai vu quelques exemples sur Internet, dont celui-ci :
SELECT ARRAY(
SELECT $1[s.i] AS "foo"
FROM
generate_series(array_lower($1,1), array_upper($1,1)) AS s(i)
ORDER BY foo
);
Mais je n'arrive pas à l'adapter à mon cas (car je ne comprends pas tout). Merci
Hors ligne
#2 03/04/2009 11:49:57
- gleu
- Administrateur
Re : trier un tableau d'éléments composites en pl/pgsql
L'exemple fonctionne sur des types simples comme des entiers car PostgreSQL sait comment trier des entiers. Mais comment pourrait-il savoir comment trier une donnée de type horaire_periode ?
Guillaume.
Hors ligne
#3 03/04/2009 11:53:42
- gleu
- Administrateur
Re : trier un tableau d'éléments composites en pl/pgsql
Ce que je veux dire, c'est qu'il faut spécifier comment faire le tri. Par exemple, moi, je ne vais pas si vous voulez trier par date de début, date de fin voire même par les deux dernières colonnes...
Guillaume.
Hors ligne
Pages : 1