8

generate_series() (行を生成する PostgreSQL の方法)に相当する DB2 を検索しようとしています。明らかに、 VALUESステートメントで行をハードコーディングしたくありません。

select * from generate_series(2,4);

    generate_series
    -----------------
                    2
                    3
                    4
    (3 rows)
4

2 に答える 2

9

DB2 が警告を抑制できるようにするには、where 節で再帰の範囲をもう少し明示する必要があります。警告をトリガーしない、わずかに調整されたバージョンを次に示します。

with dummy(id) as (
    select 2 from SYSIBM.SYSDUMMY1    
    union all
    select id + 1 from dummy where id < 4
)
select id from dummy
于 2009-06-14T05:38:42.430 に答える
3

適合する再帰クエリを書くことができました:

with dummy(id) as (
    select 2 from SYSIBM.SYSDUMMY1    
    union all
    select id + 1 from dummy where id + 1 between 2 and 4
)
select id from dummy

クエリは、夢のような for(;;) に適合させることができます。

于 2009-04-30T13:01:11.303 に答える