一行のSQLで処理を書きたいときなど連番テーブルがあると簡単に書けることがあるが、
SQL Anywhereの場合rowgeneratorテーブルを使って1~255までの連番を生成することができる。
rowgeneratorテーブルにはrow_num列が一つだけありその列に連番が入っている。
- SELECT row_num
- FROM rowgenerator
- WHERE row_num <=10
- ORDER BY row_num
SELECT row_num
FROM rowgenerator
WHERE row_num <=10
ORDER BY row_num
実行すると以下のような連番が返ってくる。
row_num
-------
1
2
3
4
5
6
7
8
9
10
(10 ロー)
試していないのだが、255よりたくさん連番がほしい場合は入れ子のSELECTにするなど複数回組み合わせればできると思う。
0 件のコメント:
コメントを投稿