SQLServer 存储过程中不拼接SQL字符串实现多条件查询
2011-02-17 21:41
821 查看
下面是 不采用拼接sql字符串实现多条件查询的解决方案
第一种写法是 感觉代码有些冗余
if (@adddate is not null) and (@name <> '')
select * from table where adddate = @adddate and name = @name
else if (@adddate is not null) and (@name ='')
select * from table where adddate = @adddate
else if(@adddate is null) and (@name <> '')
select * from table where and name = @name
else if(@adddate is null) and (@name = '')
select * from table
第二种写法是
select * from table where (adddate = @adddate or @adddate is null) and (name = @name or @name = '')
第三种写法是
select * from table where
adddate = case @adddate is null then adddate else @adddate end,
name = case @name when '' then name else @name end
第一种写法是 感觉代码有些冗余
if (@adddate is not null) and (@name <> '')
select * from table where adddate = @adddate and name = @name
else if (@adddate is not null) and (@name ='')
select * from table where adddate = @adddate
else if(@adddate is null) and (@name <> '')
select * from table where and name = @name
else if(@adddate is null) and (@name = '')
select * from table
第二种写法是
select * from table where (adddate = @adddate or @adddate is null) and (name = @name or @name = '')
第三种写法是
select * from table where
adddate = case @adddate is null then adddate else @adddate end,
name = case @name when '' then name else @name end
相关文章推荐
- SQLServer 存储过程中不拼接SQL字符串实现多条件查询
- SQLServer 存储过程中不拼接SQL字符串实现多条件查询
- SQLServer 存储过程中不拼接SQL字符串实现多条件查询
- SQLServer 存储过程中不拼接SQL字符串实现多条件查询
- SQLServer 存储过程中不拼接SQL字符串实现多条件查询
- SQLServer 存储过程中不拼接SQL字符串实现多条件查询
- SQLServer 存储过程中不拼接SQL字符串实现多条件查询
- SQLServer 存储过程中不拼接SQL字符串实现多条件查询
- SQLServer 存储过程中不拼接SQL字符串实现多条件查询
- SQLServer 存储过程中不拼接SQL字符串实现多条件查询
- sqlserver 存储过程拼接SQL字符串有数字的处理办法
- 不采用拼接sql字符串实现多条件查询的解决方案
- 存储过程————执行拼接的SQL语句的字符串
- Sql语句与存储过程查询数据的性能测试实现代码
- 通用的可带查询条件的SQL语句的分页存储过程(2)
- sql 自定义函数 ,where后拼接条件跳转语句,实现可变参数查询
- SqlServer 多条件查询 [存储过程] 经典例子结合C#的使用
- SqlServer和Oracle从多行记录(数据集)中查询结果并拼接成一个字符串的SQL语句(纵表数据转成拼接的文本)
- PHP中实现数组中key与value拼接成SQL语句中的WHERE查询字符串