han*_*ant 1 sql oracle logic lag analytical
我有以下数据集
Run Code Online (Sandbox Code Playgroud)a b c `1` 2 3 3 6 9 9 2 11
如您所见,列a的第一个值是固定的(即1),但是从第二行开始,它会获取前一个记录的列c的值.
列b的值是随机的,列c的值计算为c = a + b
我需要编写一个sql查询,它将以上述格式选择这些数据.我尝试使用滞后函数编写,但无法实现.
请帮忙.
编辑:
列b只存在于表中,a and c需要根据值计算b.
Hanumant
SQL> select a
2 , b
3 , c
4 from dual
5 model
6 dimension by (0 i)
7 measures (0 a, 0 b, 0 c)
8 rules iterate (5)
9 ( a[iteration_number] = nvl(c[iteration_number-1],1)
10 , b[iteration_number] = ceil(dbms_random.value(0,10))
11 , c[iteration_number] = a[iteration_number] + b[iteration_number]
12 )
13 order by i
14 /
A B C
---------- ---------- ----------
1 4 5
5 8 13
13 8 21
21 2 23
23 10 33
5 rows selected.
Run Code Online (Sandbox Code Playgroud)
问候,
Rob.