| Documentation PostgreSQL 8.3.23 > Langage SQL > Fonctions et opérateurs > Fonctions retournant des ensembles | |
| PrécédentComparaisons de lignes et de tableaux | Fonctions d'informations systèmeSuivant |
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)