SQL: Select a list of numbers from “nothing”

后端 未结 4 1281
佛祖请我去吃肉
佛祖请我去吃肉 2021-01-02 01:24

What is a fast/readable way to SELECT a relation from \"nothing\" that contains a list of numbers. I want to define which numbers by setting a start and end value. I am usi

4条回答
  •  夕颜
    夕颜 (楼主)
    2021-01-02 02:15

    Thanks for all answers! Following the discussion I realized that using a numbers table is not too complicated and works well and fast on both/many platforms:

    CREATE TABLE integers (i integer);
    INSERT INTO integers (i) VALUES (0);
    INSERT INTO integers (i) VALUES (1);
    ...
    INSERT INTO integers (i) VALUES (9);
    SELECT (hundreds.i * 100) + (tens.i * 10) + units.i AS x
    FROM integers AS units
      CROSS JOIN integers AS tens
      CROSS JOIN integers AS hundreds
    

    You just create this table once and can use it whenever you need a range of numbers.

提交回复
热议问题