Documentation PostgreSQL 8.3.23 > Langage SQL > Fonctions et opérateurs > Fonctions retournant des ensembles | |
Comparaisons de lignes et de tableaux | Fonctions d'informations système |
Cette section décrit des fonctions qui peuvent renvoyer plus d'une ligne. Actuellement, les seules fonctions dans cette classe sont les fonctions de génération de séries, détaillées dans le Tableau 9.43, « Fonctions de génération de séries ».
Tableau 9.43. Fonctions de génération de séries
Fonction | Type d'argument | Type de retour | Description |
---|---|---|---|
generate_series (début, fin) | int ou bigint | setof int ou setof bigint (même type que l' argument) | Produit une série de valeurs, de début à fin avec un incrément de un. |
generate_series (début, fin, pas) | int ou bigint | setof int ou setof bigint (même type que l'argument) | Produit une série de valeurs, de début à fin avec un incrément de pas. |
Quand pas est positif, aucune ligne n'est renvoyée si début est supérieur à fin. À l'inverse, quand pas est négatif, aucune ligne n'est renvoyée si début est inférieur à fin. De même, aucune ligne n'est renvoyée pour les entrées NULL. Une erreur est levée si pas vaut zéro.
Quelques exemples :
select * from generate_series(2,4); generate_series ----------------- 2 3 4 (3 rows) select * from generate_series(5,1,-2); generate_series ----------------- 5 3 1 (3 rows) select * from generate_series(4,3); generate_series ----------------- (0 rows) select current_date + s.a as dates from generate_series(0,14,7) as s(a); dates ------------ 2004-02-05 2004-02-12 2004-02-19 (3 rows)