Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/sql/75.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

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
需要编写一条sql语句,当两个或多个条件匹配时,该语句将在decode语句中返回一个值,结果仅在一行中_Sql_Oracle - Fatal编程技术网

需要编写一条sql语句,当两个或多个条件匹配时,该语句将在decode语句中返回一个值,结果仅在一行中

需要编写一条sql语句,当两个或多个条件匹配时,该语句将在decode语句中返回一个值,结果仅在一行中,sql,oracle,Sql,Oracle,我需要编写一个sql语句,当两个或多个条件匹配时,该语句将在decode语句中返回一个值,结果只在一行中 Select DECODE(resource_type,('1' AND '2'), 'NO', 'YES') Resource_present from Resource where resource_id = 'XYZ' 有可能吗。? 请帮助……您可以使用案例而不是解码: Select CASE WHEN resource_type IN ('1' , '2') THEN 'NO'

我需要编写一个sql语句,当两个或多个条件匹配时,该语句将在decode语句中返回一个值,结果只在一行中

Select DECODE(resource_type,('1' AND '2'), 'NO', 'YES') Resource_present 
from Resource where resource_id = 'XYZ'
有可能吗。?
请帮助……

您可以使用
案例
而不是
解码

Select CASE WHEN resource_type IN ('1' , '2') THEN 'NO' ELSE 'YES' END Resource_present 
from Resource where resource_id = 'XYZ'
另一个选项是在解码中使用更多参数:

Select DECODE(resource_type,'1', 'NO', '2', 'NO', 'YES') Resource_present 
from Resource where resource_id = 'XYZ'

编写自己的函数并实现其中的逻辑,然后用SQL语句调用该函数,怎么样? 我将更容易阅读,如果将来需要,您可以实现进一步的逻辑

参数将是字段ressource_类型,该函数的返回值将是varchar


(如果我被允许的话,我会把它写下来作为评论…

资源类型如何既可以是“1”又可以是“2”?你的意思是
还是
?你可以使用“CASE.WHEN”。SQL中的THEN.ELSE.END语法。