这是我的查询语句:
WHERE date_column LIKE
(CASE
WHEN :date_parameter IS NOT NULL
THEN
:date_parameter
ELSE '%%'
END)
...
如果参数为null,我想获取所有行。我可以代替“ %%”使用什么? (因为类型不一致,因此'%%'无法正常工作。)
尝试
WHERE (:date_parameter is null
OR date_column = :date_parameter)
我曾经写过
WHERE nvl(:date_parameter,date_column) = date_column
但是我认为人们觉得它难以阅读。