case语句

qyyhg6bp  于 2021-08-13  发布在  Java
关注(0)|答案(2)|浏览(425)

如何使此查询在oraclesql中工作。这是我的sql查询中的where子句。

AND (CASE 
       WHEN ('THIS_PARAMETER_VALUE') IS NULL 
       THEN 1=1 
       ELSE TABLE.COLUMN_NAME = ('THIS_PARAMETER_VALUE') 
     END)
anhgbhbe

anhgbhbe1#

您可以这样写,假设参数名是您的\u参数:

table.column_name=nvl(your_parameter,table.column_name)

因此,如果您的\u参数为null,那么它将给出table.column\u name=table.column\u name(即like 1=1),否则它将给出table.column\u name=您的\u参数

9udxz4iz

9udxz4iz2#

最安全的表述是:

AND (:parameter IS NULL OR TABLE.COLUMN_NAME = :parameter)

相关问题