表:FOLK
folk folk_name
  1     汉族
  2     大汉 
在存储过程中
@folk_name    VARCHAR(255),
@flag int OUTPUT
AS
SELECT @flag=  count(folk_id)
FROM folk
WHERE  folk_name  LIKE '%'+@folk_name+'%'
GO
如果我输入的@folk_name为"汉",则有两条信息.我只想得到完全匹配的值,应该怎么写
WHERE  folk_name  = '%'+@folk_name+'%',却什么都得不到.

解决方案 »

  1.   

    --完全匹配直接等于
    WHERE  folk_name=@folk_name
      

  2.   

    @flag int OUTPUT 直接可以查到吗?不用输出类型也可以吧,做判断的话我也也不用create procedure GetAllByName@folk_name    VARCHAR(255), AS 
    SELECT count(folk_id) as flag
    FROM folk 
    WHERE  folk_name  LIKE  '% '+@folk_name+ '% ' 
    GO 
      

  3.   

    完全匹配????
    直接...
    folk_name=@folk_name 不就行了,不要模糊查询就可以了啊?