Je déteste dire ça, mais MySQL
est le seul RDBMS
des quatre grands qui n'ont pas cette fonctionnalité.
Dans Oracle
:
SELECT *
FROM dual
CONNECT BY
level < n
En MS SQL
(jusqu'à 100
lignes):
WITH hier(row) AS
(
SELECT 1
UNION ALL
SELECT row + 1
FROM hier
WHERE row < n
)
SELECT *
FROM hier
ou en utilisant l'indice jusqu'à 32768
WITH hier(row) AS
(
SELECT 1
UNION ALL
SELECT row + 1
FROM hier
WHERE row < 32768
)
SELECT *
FROM hier
OPTION (MAXRECURSION 32767) -- 32767 is the maximum value of the hint
Dans PostgreSQL
:
SELECT *
FROM generate_series (1, n)
En MySQL
, rien.