sql2005模糊查询

chai1338 2010-04-04 04:17:17
我要根据3个条件进行模糊查询,如下:
set ANSI_NULLS ON
set QUOTED_IDENTIFIER ON
go


ALTER proc [dbo].[GetListGoodBySelect]
@size varchar(50),
@type varchar(50),
@load varchar(50)
as
select * from ListGoods where [size] like '%'+@size+'%' or [type]like '%'+@type+'%' or [load]like '%'+@load+'%'

如果参数为空 则该条件不存在,我调试了下 貌似全部为null的话什么都查不出来。与我要的结果完全相反。哪里出了问题
...全文
49 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
dawugui 2010-04-04
  • 打赏
  • 举报
回复
isnull('%'+@size+'%' , '一个不可能存在的值')
jiangshun 2010-04-04
  • 打赏
  • 举报
回复
select * from ListGoods 
where ([size] like '%'+@size+'%' or @size is null)
or ([type] like '%'+@type+'%' or @type is null)
or ([load] like '%'+@load+'%' or @load is null)
pt1314917 2010-04-04
  • 打赏
  • 举报
回复

ALTER proc [dbo].[GetListGoodBySelect]
@size varchar(50),
@type varchar(50),
@load varchar(50)
as
select * from ListGoods where [size] like '%'+isnull(@size,'')+'%' or [type]like '%'+isnull(@type,'')+'%' or [load]like '%'+isnull(@load,'')+'%'

22,298

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server 疑难问题
社区管理员
  • 疑难问题社区
  • 尘觉
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧