2016-05-09 3 views
0

を繰り返す:so-linkは、テーブル値に基づいてクエリエントリを複製/に/このPostgreSQLのトピックからコピーされた関連

のは私が書きたい二列

id | value | 
----+-------+ 
1 | 2 | 
2 | 3 | 

を持つテーブルがあるとしましょうクエリは、値を に基づいて各行を複製(繰り返し)します。私は(5行が合計)は、この結果をしたい:

id | value | 
----+-------+ 
1 | 2 | 
1 | 2 | 
2 | 3 | 
2 | 3 | 
2 | 3 | 

どのようにこれは(のSybase SQL)SQL Anywhereでは可能ですか?

答えて

1

これを行う最も簡単な方法は、数値表を持つことです。 。 。 1つは整数を生成するものです。おそらくあなたは便利です。他の方法があります。例えば、再帰CTEを使用して:

with numbers as (
     select 1 as n 
     union all 
     select n + 1 
     from numbers 
     where n < 100 
) 
select t.* 
from yourtable t join 
    numbers n 
    on n.n <= value; 

のSybaseのすべてのバージョンは必ずしも再帰CTEをサポートしていない、そのようなテーブルを生成するか、あなたはすでに便利なものを持っているかもしれない他の方法があります。

+0

あなたの答えをありがとう。私は明日の仕事に戻ったらすぐに試してみるよ。 –

関連する問題