自定义一个函数 需要把值传进去但是必须模糊查询create FUNCTION xxx (
@a int ,@b char(10) 
)
RETURNS int
AS
BEGIN
RETURN (select c  from temp
where b like '%'+@b+'%' and a=@b)
END查不出结果,请教大侠们怎么处理
表 temp
列 a,b,c
谢谢

解决方案 »

  1.   

    @b char(10) 个传了什么值,最好用varchar(10)吧,这样会去自己去空格
      

  2.   

    create FUNCTION xxx ( 
    @a int ,@b char(10) 

    RETURNS int 
    AS 
    BEGIN 
    RETURN (select c from temp 
    where charindex(@b,b)>0 and a=@b)--改成这样 
    END 
      

  3.   

    create FUNCTION xxx ( 
    @a int ,@b char(10) -- 改成varchar(10)

    RETURNS int 
    AS 
    BEGIN 
    RETURN (select c from temp 
    where charindex(@b,b)>0 and a=@b)--改成这样 
    END 
      

  4.   

    用like的话 可以考虑动态sql
      

  5.   

    用like的话 可以考虑动态sql