Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/asp.net-core/3.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
WHERE语句中的SQL条件大小写';然后为空';_Sql_Null_Case_Where - Fatal编程技术网

WHERE语句中的SQL条件大小写';然后为空';

WHERE语句中的SQL条件大小写';然后为空';,sql,null,case,where,Sql,Null,Case,Where,如果“column\u task”具有特定值,我尝试替换“operation\u num”中的值。但我找不到合适的说法。你能帮我吗 仅供参考:“操作数”列不包含任何空值 WHERE CASE operation_num WHEN column_task = 'EXERCISE' THEN operation_num is null ELSE operation_num -- operation_num = operation_num END 谢

如果“column\u task”具有特定值,我尝试替换“operation\u num”中的值。但我找不到合适的说法。你能帮我吗

仅供参考:“操作数”列不包含任何空值

WHERE
  CASE operation_num WHEN column_task = 'EXERCISE' THEN operation_num is null
                     ELSE operation_num -- operation_num = operation_num
  END
谢谢你试试这个

WHERE
  CASE WHEN column_task = 'EXERCISE' THEN null
                     ELSE operation_num
  END
试试这个

WHERE
  CASE WHEN column_task = 'EXERCISE' THEN null
                     ELSE operation_num
  END

将其转换为
和/或
(性能也会更好):


虽然我不理解最后一个条件。

将其转换为
和/或
(也将有更好的性能):


虽然我不明白最后一个条件。

我想应该是如下所示

WHERE
  (CASE column_task WHEN 'EXERCISE' THEN  null
                     ELSE operation_num end)= value

我想会像下面这样

WHERE
  (CASE column_task WHEN 'EXERCISE' THEN  null
                     ELSE operation_num end)= value

对不起,我问错了。我最终解决了查询中“选择”部分的问题:

select 
  (case when (to_char(operation_num) = '10' and column_task = 'EXERCISE')
  then REPLACE(to_char(operation_num),'10',' ')
  else to_char(operation__num)
  end) as "column"
  ,column_task
from  my_table

但是谢谢大家的努力。

很抱歉我的问题错了。我最终解决了查询中“选择”部分的问题:

select 
  (case when (to_char(operation_num) = '10' and column_task = 'EXERCISE')
  then REPLACE(to_char(operation_num),'10',' ')
  else to_char(operation__num)
  end) as "column"
  ,column_task
from  my_table
但是谢谢大家的努力。

我想你们打算:

WHERE column_task <> 'EXERCISE' OR operation_num IS NULL)
其中列任务“练习”或操作数为空)
我想你打算:

WHERE column_task <> 'EXERCISE' OR operation_num IS NULL)
其中列任务“练习”或操作数为空)
此查询将结果显示为column1#,这是错误的,当它为null时,则应显示列值


这个查询将结果显示为column1#,这是错误的,当它为null时,它应该显示列值

至少对我来说,要求不清楚。你能分享一些样本数据和你试图得到的这个样本的结果吗。。。列_task-‘EXERCISE’、‘RUNNING’……一般来说,在WHERE子句中使用和/或结构而不是大小写表达式要好得多。至少对我来说,要求不明确。你能分享一些样本数据和你试图得到的这个样本的结果吗。。。列任务-‘EXERCISE’、‘RUNNING’……一般来说,在WHERE子句中使用和/或结构而不是大小写表达式要好得多。我仍然看到:ORA-00905:缺少关键字00905。00000-“缺少关键字”。。。我也试过。。然后替换(操作_null,null),但它不起作用…修改了答案,您现在可以检查我仍然看到:ORA-00905:缺少关键字00905。00000-“缺少关键字”。。。我也试过。。然后替换(操作_null,null),但它不起作用…修改了答案,现在可以检查了