我有一个视图receipt_data
,其中包含contract_no
和receipt_no
列-像这样:
contract_no | receipt_no | Amount
------------+------------+---------
1176 | ABMN1024 | 100
1176 | ABMN1027 | 767
1176 | ABMN1027 | 345
NULL | MNDF7132 | 389
NULL | NULL | 673
1046 | MDGF2344 | 454
我需要查询此视图并添加运行编号。运行编号应添加如下。
run_no |contract_no | receipt_no | Amount
----------+------------+------------+--------
1 | 1176 | ABMN1024 | 100
2 | 1176 | ABMN1027 | 767
| 1176 | ABMN1027 | 345
3 | NULL | MNDF7132 | 389
| NULL | NULL | 673
4 |1046 | MDGF2344 | 454
运行编号必须类似于
contract_no + receipt_no
receipt_no
有值,则返回运行编号receipt_no
为空,则无需添加流水号,就跳过它是否可以这样编写脚本?请帮助
答案 0 :(得分:0)
您可以尝试使用row_number()
分析函数
select
case when receipt_no is not null
then
row_number()over(order by (select null))
else null end as run_no,t.* from
table_name t