SELECT     ISVName, WebSite, Address, ZipCode, City
FROM         ISVBase
WHERE     (ISVName LIKE '%' + @ISVName + '%') or (City LIKE @City)我如果只写WHERE     (ISVName LIKE '%' + @ISVName + '%')没有错但是都写上就查询不到结果了,怎么回事啊???

解决方案 »

  1.   

    SELECT     ISVName, WebSite, Address, ZipCode, City FROM  ISVBase
    WHERE     (ISVName LIKE '%' + @ISVName + '%') 
    union all
    SELECT     ISVName, WebSite, Address, ZipCode, City FROM  ISVBase
    WHERE (City LIKE @City)
      

  2.   

    我是用reporting service , 保存后语句自动改为:
    SELECT     ISVName, WebSite, Address, ZipCode, City
    FROM         ISVBase
    WHERE     (ISVName LIKE '%' + @ISVName + '%')
    UNION ALL
    SELECT     ISVName, WebSite, Address, ZipCode, City
    FROM         ISVBase AS ISVBase_1
    WHERE     (City LIKE @City)两个参数默认值都为空,查询不到结果
      

  3.   

    ISVName 参数可以正常查询,但是city参数没有作用,怎么回事?多谢各位指点
      

  4.   

    '',  还有一现象就是city的参数输入框是黄色的,而不是一般的白色?楼上老大,能给个im的联系方式不?
      

  5.   

    declare @isvname varchar(10)
    set @isvname=''
    declare @city varchar(10)
    set @city=''
    SELECT ISVName, WebSite, Address, ZipCode, City
     FROM ISVBase
    WHERE (ISVName LIKE '%' + @ISVName + '%') or (City LIKE '%'+@City+'%')--这样呢查询出来吗?
      

  6.   

    现在在sql里面能查询出来,但是在报表里面输入参数查询就不行了~~:(
      

  7.   

    是不是从文本框中输入时,有空格字符?
    你可以select @city看一下传进来的是什么样子的值
      

  8.   

    SELECT     ISVName, WebSite, Address, ZipCode, City
    FROM         ISVBase
    WHERE     (ISVName LIKE =@ISVName=) or (City =@City)这样写就没有问题,好奇怪,但是我需要like
      

  9.   

    --这样试试呢?
    declare @isvname varchar(10)
    set @isvname=' '
    declare @city varchar(10)
    set @city=' '
    SELECT ISVName, WebSite, Address, ZipCode, City
     FROM ISVBase
    WHERE (ISVName LIKE '%' + replace(@ISVName,' ','') + '%') or (City LIKE replace(@City,' ',''))drop table ISVBase
      

  10.   

    这样的问题几个:第一空格,第二NULL
    用trim(rtrim(变量)),isnull(变量,'')
      

  11.   

    你用SQL200的时间探查器,跟踪执行的SQL语句不就知道哪里出问题了?
      

  12.   

    declare @stemp varchar(800)
    set @stemp="SELECT ISVName, WebSite, Address, ZipCode, City FROM ISVBase WHERE  (ISVName LIKE '%' + @ISVName + '%')"
    exec(@stemp)
      

  13.   

    SELECT     ISVName, WebSite, Address, ZipCode, City
    FROM         ISVBase
    WHERE     (ISVName LIKE '%' + ISNULL(@ISVName,'') + '%') or (City LIKE ISNULL(@City,''))--
      

  14.   

    不知道你的ISVName和City是什么类型的
    SELECT ISVName, WebSite, Address, ZipCode, City
     FROM ISVBase
    WHERE (ISVName LIKE '%' + replace(@ISVName,' ','') + '%') or (City LIKE '%'+replace(@City,' ','')+'%')
      

  15.   

    拉断点,看看SQL语句变成什么样子了,这样很容易找到原因的.
      

  16.   

    在程序里把你的sql语句打印到txt文本文件里看看错哪了
      

  17.   

    这样试试:
    SELECT     ISVName, WebSite, Address, ZipCode, City
    FROM         ISVBase
    WHERE     (ISVName LIKE '%@ISVName%') or (City LIKE @City)
      

  18.   

    declare @isvname varchar(10)
    set @isvname=''
    declare @city varchar(10)
    set @city=''
    SELECT ISVName, WebSite, Address, ZipCode, City
     FROM ISVBase
    WHERE (ISVName LIKE '%' + @ISVName + '%') or (City LIKE '%'+@City+'%')
      

  19.   


    xeqtr1982(ShaKa)() 
    真是个热心人。配服ing