为了账号安全,请及时绑定邮箱和手机立即绑定

你好,关于在SQL LIKE模糊查询的问题?详细情况看下面

你好,关于在SQL LIKE模糊查询的问题?详细情况看下面

森栏 2021-05-31 10:06:17
在一个存储过程中 有3个参数 2个参数不确定有没有值没值的时候 根据有值得参数查询出数据有值得时候 根据这些值查询出数据怎么用LIKE来控制
查看完整描述

2 回答

?
神不在的星期二

TA贡献1963条经验 获得超6个赞

--下面这个应该是可以的!
create proc procget --[存储过程名]
@proc1 varchar(50),--这个是一定要存在的参数
@proc2 varchar(50),
@proc3 varchar(50)

as
--定义一个要执行的字符串语句
declare @aa varchar(200)
set @aa = 'select * from TA where ' + '[表中的列名] like ' + '''%' + @proc1 + '%'''

--组合要执行的语句
--如果参数为空,就加上字符空串,否则就加上相应的条件语句
set @aa = @aa + case when @proc2 is null then '' else ' and [表中列名] like'+'''%'+@proc2+ '%''' end
set @aa = @aa + case when @proc3 is null then '' else ' and [表中列名] like'+'''%'+@proc3+ '%''' end
--执行语句
exec(@aa)

查看完整回答
反对 回复 2021-06-07
?
呼唤远方

TA贡献1856条经验 获得超11个赞

看你情况吧,like %参数%吧,这样不知道会不会出现多个结果,但是如果like 参数%如果不是参数开头就找不到。。。这个要看你具体情况了。

查看完整回答
反对 回复 2021-06-07
  • 2 回答
  • 0 关注
  • 379 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信