Oracle sql - 将值赋值为null或保留值(如果不为null)

时间:2012-09-06 17:20:35

标签: sql oracle11g isnull notnull

我有这个任务,如果值为null,我需要分配一个值。

如果它不为null,那么我想保留已存在的值.. (这就是困扰我的事情)我知道它很容易......

谢谢, 人

2 个答案:

答案 0 :(得分:2)

UPDATE myTable
  SET myCol = myDefaultValue
  WHERE myCol IS NULL;

答案 1 :(得分:1)

Coalesce()是您应该使用的,它也是ansi-99标准的一部分。

Update [Table] Set
   Col1 = coalesce(Col1, @Col1Val)
  ,Col2 = coalesce(Col2, @Col2Val)
Where ...