www.ctrt.net > SQL:存储过程中的likE问题!

SQL:存储过程中的likE问题!

like '%'+rtrim(@para1)+'%'

语句应该是 SELECT 出版社,ISBN号,定价,作者姓名 FROM book_1,teacher WHERE book_1.编号=teacher.编号 AND 出版社LIKE '%'+@出版社+'%' '%@出版社%'这个写法表示包含 “@出版社” 文字的出版社而不是变量

你拼接完了之后,将这个sql打印出来看看,或者将打印出来的sql语句放到客户端执行一下看看就知道哪里出了问题。。

方法1:你可以给参数一定 默认值 create proc SelectAllProcess @xingming varchar(15)='', @chenghu varchar(15)='', @haoma varchar(15)='', @fenzu varchar(10)='' 。。。 exec SelectAllProcess @xingming=default, @chenghu= default, @haom...

like语句实际上就是模糊的字段查询,通常与“%”(一个或多个)结合使用。 举例说明: sql:SELECT * FROM tablename T WHERE T.name LIKE '%zhang%'; 解释:以上语句就就是查询出tablename表中name字段带有“zhang”的所有记录。 备注:存储过程中用"|...

@Depart char 首先不要用char,除非你能明确确定字数 其次字符类型一定要标注长度 改为@Depart nvarchar(20)试试

create proc up_user @userid char(20), @username char(20)as BEGIN select * from tb_user WHERE userid = CASE WHEN @userid '' THEN @userid ELSE userid ENDAND username = LIKE '%' + CASE WHEN @username '' THEN @username ELSE usernam...

取消前面的那个% 就好了 这个看你怎么分析了, %张% 代表 查询所有包括张的 字段 张% 代表查询 以张开头的所有字段 %张 代表所有以张结尾的字段 你的语句我建议你写成 select emp_name from emps where( emp_name like @张% or emp_name %@张 ) ...

create proc pp @a int,@b nvarchar(50) as declare @id int select @id=b from 表2 where 2=@a update 表1 set 2=@id where 3=@a and 其他条件=@b 执行传参 exec pp '1','aaa'

当前有一存储过程 执行的时候 exec 的第一个参数需要加like语句 如 exec proc_page 'info2 where id not in( select top (0) id from info2 where centerclass=152 and bigcity=1 and centercity=7 order by id desc) and bigcity=1 and centerc...

网站地图

All rights reserved Powered by www.ctrt.net

copyright ©right 2010-2021。
www.ctrt.net内容来自网络,如有侵犯请联系客服。zhit325@qq.com