首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 数据库 > SQL Server >

sql查询条件,该如何处理

2012-03-12 
sql查询条件我的sql存储过程要实现查某个范围的价格的商品,select * from sale where 11 and price betwe

sql查询条件
我的sql存储过程要实现查某个范围的价格的商品,
select * from sale where 1=1 and price between price1 and price2 and .....
如果传来的price1和price2都是0,则忽略价格限制
我想开始就判断price1和price2是否都为0,是则设置变量@temp为空,用于替换查询条件and price between price1 and price2,但不知道如何写,请指教!


[解决办法]

SQL code
select * from sale where 1=1 and price between (case when price1=0 then price else price1 end)             and (case when price2=0 then price else price2 end) and ...
[解决办法]
SQL code
DECLARE @price1 DECIMAL(12,5),@price2 DECIMAL(12,5)DECLARE @temp VARCHAR(500)DECLARE @sql VARCHAR(1000)SET @temp = ''set @sql = 'select * from sale where 1=1 'IF Not (@price1 = 0 AND @price2 = 0)BEGIN    SET @sql = @sql + ' where price between '+@price1+' and '+@price2END EXEC(@sql)GO
[解决办法]
拼接动态sql

热点排行
Bad Request.