我需要帮助编写SQL查询(在Oracle中)。
我有这张桌子:
output_value | output_count
--------------+--------------
abc | 2
def | 3
期望的输出:
abc
abc
def
def
def
基本上,我希望输出的每个output_value
值都包含output_count
次。
答案 0 :(得分:4)
答案 1 :(得分:2)
您是否需要CTE才能获得结果:
create table t ( t varchar2(50) , i int );
insert into t values ( 'abc', 2);
insert into t values ( 'xyz', 3);
with cte (t,i) as (
select t.t, t.i from t
union all
select cte.t, cte.i - 1 as i
from cte
where cte.i > 1
)
select cte.t
from cte
结果:
t
---
abc
xyz
xyz
xyz
abc
由@a_horse_with_no_name
从MSSQL转换为ORACLE语法