db2 中的序列号生成

sequence number generation in db2

我有 table A,其中包含 5 列 col1 到 col5.totally 它包含 6 rows.I 我正在使用 DB2 sql

下面是 col2 的数据。

A
A
test
testasfdla
Null
Null

要求:- 如果 col2 包含 null 我需要分配从 1 开始的序列号。

除外 o/p:-

下面是 col2 的数据。

A
A
test
testasfdla
1
2

我尝试使用 row_number 但没有得到所需的 o/p。

试试这个:

WITH T (C) AS 
(
VALUES
  'A'
, 'A'
, 'test'
, 'testasfdla'
, Null
, Null
)
SELECT COALESCE(C, TO_CHAR(ROW_NUMBER() OVER (PARTITION BY C)))
FROM T