LoginSignup
1
2

More than 3 years have passed since last update.

[SQL]数字の集合を生成するSQLクエリー

Last updated at Posted at 2021-04-07
test.sql
;WITH
--数字集合生成
    L1 AS(SELECT 1 AS n UNION ALL SELECT 1)     --2
,   L2 AS(SELECT 1 AS n FROM L1 a ,L1 b)        --4=2^2 
,   L3 AS(SELECT 1 AS n FROM L2 a ,L2 b)        --16=4^4
,   L4 AS(SELECT 1 AS n FROM L3 a ,L3 b)        --256=16^16
,   L5 AS(SELECT 1 AS n FROM L4 a ,L4 b)        --65536=256^256
,   mn AS(SELECT ROW_NUMBER() OVER(ORDER BY n) AS n FROM L4)
SELECT n FROM mn

「2のN乗」のイメージで最初の2レコードの集合群[L1]をCROSS JOINで掛け合わせを続けていき、最後にROW_NUMBER()でナンバリングする

たまに使うので忘れずにメモ。

1
2
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
2