sql语句借助case when实现自动拼装where条件
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了sql语句借助case when实现自动拼装where条件相关的知识,希望对你有一定的参考价值。
参考技术A 遇到这样一个场景,一条SQL语句,根据A字段查询,在没有mybatis情况下,如何实现“如果A字段为空,则查询全量,否则根据A字段过滤。经过摸索,可以借助case when ... else end 在where中实现。
select * from http_summary
where
CASE
when '$api' != '全部' then to_api='$api'
else to_api=to_api
END
and trace_date ='$traceDate'
SQL语句,使用case when 实现批量更新数据
SQL语句,使用case when 实现批量更新数据
update table_name set
status = case id
when 1 then ‘正常‘
when 2 then ‘禁用‘
when 3 then ‘过期‘
end,
rank = case id
when 1 then 1
when 2 then 2
when 3 then 3
end
where id in (1,2,3);
以上是关于sql语句借助case when实现自动拼装where条件的主要内容,如果未能解决你的问题,请参考以下文章