日期:2014-05-18  浏览次数:20474 次

MSSQL存储过程问题(like语句问题)
我写了个存储过程如下:
create   procedure   buscx02
@MMColParam   char(10),@MMColParan   char(100)
as  
if   @MMColParam= '1 '
SELECT   line_name,   S_E_Time_A,   All_stations,   S_E_Time_B,   Tips
FROM   dbo.BusBus
WHERE   line_name   =   @MMColParan
else
SELECT   line_name,   S_E_Time_A,   All_stations,   S_E_Time_B,   Tips
FROM   dbo.BusBus
WHERE   All_stations   =   @MMColParan

调试通过。如下:
exec   buscx02   1,2
exec   buscx02   2,eee

但我需要的是最后一句的=改成like
但我改成like后,查询结果是空白。
请大侠帮我看看,多谢。




------解决方案--------------------
如果你的参数是char类型,最好加上rtrim:
WHERE All_stations like '% '+rtrim(@MMColParan) + '% '