在项目中遇到需要动态拼接查询条件的需求,现将解决方案列于下。
一、
select * from table t where ('$(param)' is null or t.filed = '$(param)')
使用方式:可以在拼接查询条件时进行判断,若param存在则传该参数,若不存在则不传任何参数。
二、
select *
from table t
where t.filed || '' = (case '$(param)'
WHEN '-1' THEN
t.filed || ''
ELSE
'$(param)'
END)
使用方式:拼接查询条件时若param为空,则将其赋值为-1,否则传真实参数。
本文介绍了两种在项目中实现动态拼接SQL查询条件的方法。第一种使用三元运算符进行条件判断,第二种通过CASE语句实现。这些技巧有助于在参数不确定时灵活构建查询语句。
1467

被折叠的 条评论
为什么被折叠?



