Search code examples
sqlpostgresqlgenerate-series

How can I generate a series of repeating numbers in PostgreSQL?


In PostgreSQL, is it possible to generate a series of repeating numbers? For example, I want to generate the numbers 1 to 10, with each number repeated 3 times:

1
1
1
2
2
2
3
3
3
.. and so on.

Solution

  • You could cross join it to a series of 3:

    SELECT a.n
    from generate_series(1, 100) as a(n), generate_series(1, 3)