Plsql 两个值之间的条件选择
我想知道PL/SQL中的值之间是否有条件选择,因为在基于C的语言中有以下内容:Plsql 两个值之间的条件选择,plsql,conditional-statements,conditional-operator,Plsql,Conditional Statements,Conditional Operator,我想知道PL/SQL中的值之间是否有条件选择,因为在基于C的语言中有以下内容:[condition]?[value1]:[value2] 我想在update语句中使用它: UPDATE [table] SET [field] = [condition] ? [value1] : [value2] WHERE [where clause]; 我已经考虑过解码,但我想直接使用它,而不是将其结果存储在变量中,然后在update语句中使用它。您可以尝试使用CASE语句 UPDATE [table] S
[condition]?[value1]:[value2]
我想在update语句中使用它:
UPDATE [table] SET [field] = [condition] ? [value1] : [value2] WHERE [where clause];
我已经考虑过
解码
,但我想直接使用它,而不是将其结果存储在变量中,然后在update语句中使用它。您可以尝试使用CASE
语句
UPDATE [table]
SET [field] =
CASE
WHEN field2 = 'Y'
THEN [value1]
WHEN field2 = 'N'
THEN [value2]
ELSE
END;
如果是一个简单的条件,也可以使用DECODE:UPDATE[table]SET[field]=DECODE(field2[value],[value when field2=value],[value when field2 value]),WHERE[WHERE子句];