数据库中如何判断某参数为空就不执行where条件

2024-11-17 02:30:20
推荐回答(1个)
回答1:

看你使用的什么数据库了。而且问题好像没描述清楚。
如果是在数据库中判断参数,是在存储过程过程自定义function中么?数据库里面普通的SQL没法传递参数的。
以Mysql数据库为例。
在存储过程中使用判断一个参数,例参数为vtitle

Select a.*
from trn_res_courseware a
where 1 = 1 and
IF (vtitle is NULL, 0 = 0, a.title like CONCAT('%'+vtitle+'%'));

vtitle 是参数。
如果参数为空,则不执行(0=0永远成立),
不为空,则执行 a.title like CONCAT('%'+vtitle+'%')) 查询条件。