Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/oracle/10.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Oracle中的解码功能_Oracle - Fatal编程技术网

Oracle中的解码功能

Oracle中的解码功能,oracle,Oracle,我有这样的情况 if(someparam!=value1) someparam=1 if(someparam!=value2) someparam=2 默认值=1 如何在这种情况下使用解码功能 DECODE(SomeParam, Value1, DECODE(SomeParam, Value2, 1, 2), 1) 但情况更好: case when someparam != Value1 then 1 whene someparam != Value2 then 2 else

我有这样的情况 if(someparam!=value1) someparam=1 if(someparam!=value2) someparam=2 默认值=1

如何在这种情况下使用解码功能

DECODE(SomeParam, Value1, DECODE(SomeParam, Value2, 1, 2), 1)
但情况更好:

case when someparam != Value1 then 1
    whene someparam != Value2 then 2
    else 1
end
与value1的整个比较似乎是多余的,因为它只会变成默认值

解码(SomeParam,SomeParam!=value1,1, someParam!=值2,2,1)

默认值与评估someparam时相同!=因此,Value1可以将其简化为:

解码(SomeParam,SomeParam!=value2,2,1)


我希望这能有所帮助:-)

对于非价值1和非价值2的东西,预期的结果是什么?
 decode(someparam, value2, 1, 2)