sql2005中字段分段查询,急!!!
在此通过info表中的name字段来实现分段的匹配查询。 
 如表info中的name为 'test1a234*23dewrdfe ' 
 现在想通过输入test1,234*23,dewr来实现查询。 
 如: 
 declare	@Name   as   nvarchar(100) 
 set   @Name   =为 'test1a234*23dewrdfe ' 
 select   Info.*   from   Info   where   InfoName   like    '% '+ 'test1 '+ '% '   and   InfoName   like    '% '+234*23+ '% '+   and   InfoName   like    '% '+dewr+ '% '。 
 试问改怎样实现呢?
------解决方案--------------------或者这样: 
 declare @str1 nvarchar(20),@str2 nvarchar(20),@str3 nvarchar(20) 
 set @str1 = N 'test1 ' 
 set @str2 = N '234*23 ' 
 set @str3 = N 'dewr '   
 SELECT * FROM Info WHERE  
 patindex(N '% ' + @str1 + N '% ',InfoName) >  0 and  
 patindex(N '% ' + @str2 + N '% ',InfoName) >  0 and  
 patindex(N '% ' + @str3 + N '% ',InfoName) >  0 
------解决方案--------------------declare @Name  as nvarchar(100) 
 set @Name = 'test1,234*23,dewr ' 
 declare @sql nvarchar(4000) 
 set @sql= 'select * from Info where  InfoName  like ' 
 select @sql=@sql+ '   ' '% '+replace(@Name, ', ', '% ' ' and  InfoName  like  ' '% ')+ '% ' ' ' 
 print @sql 
 exec(@sql)   
 ---------------------   
 select * from Info where  InfoName  like   '%test1% ' and  InfoName  like  '%234*23% ' and  InfoName  like  '%dewr% '