generate_series () équivalent dans DB2
-
03-07-2019 - |
Question
J'essaie de rechercher l'équivalent DB2 de generate_series (). (le moyen PostgreSQL de générer des lignes). Je ne veux évidemment pas coder en dur les lignes avec un VALEURS déclaration.
select * from generate_series(2,4);
generate_series
-----------------
2
3
4
(3 rows)
La solution
La clause where doit être un peu plus explicite sur les limites de la récursion pour que DB2 supprime l'avertissement. Voici une version légèrement ajustée qui ne déclenche pas l'avertissement:
with dummy(id) as (
select 2 from SYSIBM.SYSDUMMY1
union all
select id + 1 from dummy where id < 4
)
select id from dummy
Autres conseils
J'ai réussi à écrire une requête récursive qui correspond à:
with dummy(id) as (
select 2 from SYSIBM.SYSDUMMY1
union all
select id + 1 from dummy where id + 1 between 2 and 4
)
select id from dummy
La requête peut être adaptée à tout ce dont vous pouvez rêver (;;).
Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow