0
Item  ID
NULL  1
NULL  2
3     3
NULL  4
NULL  5

我试图让输出为

Item  ID
1     1
2     2
3     3
4     4
5     5

使用游标我将底部 2 个空值更新为 4 和 5,并使用标志我计算了 3 以上的 NULL,但我无法访问前 2 个位置?方法正确吗?

4

1 回答 1

0

不是 100% 清楚您的要求,但COALESCE会采用多个参数,并返回第一个非 NULL 值。

SELECT COALESCE(Item, ID)

要获取两列,如果该列为空,则该列默认为其他列的值,您可以这样做

SELECT COALESCE(Item, ID) AS Item,
       COALESCE(ID, Item) AS ID
于 2012-11-05T19:04:13.030 回答