SQL> with test (cola, colb) as
2 (select 'K 111', 1 from dual union all
3 select ' ' , 1 from dual union all
4 select 'K222' , 2 from dual union all
5 select ' ' , 3 from dual
6 )
7 select decode(cola, ' ', to_char(colb), cola) cola,
8 colb
9 from test;
COLA COLB
---------- ----------
K 111 1
1 1
K222 2
3 3
SQL>
4条答案
按热度按时间k4aesqcs1#
可以使用
case
表达式:字符串
如果你想更通用,你可以使用
like
:型
在
update
中,您可以将when
条件移动到过滤条件:型
8ftvxx2r2#
可以使用
case
表达式:字符串
请注意,
case
表达式的所有分支必须返回相同数据类型的值。看起来colb
是一个数字,所以这将它转换为字符串。t9aqgxwy3#
或者,
DECODE
函数(只是CASE
的替代):字符串
nr7wwzry4#
另一个选项是使用
IS NULL
检查更新值,如下所示:字符串
Oracle中的空字符串被视为null。