有sql语句不懂,求教!
create table news(keys nvarchar(200))
insert into news select '房地产+城建+监理'
insert into news select '城建+监理'
insert into news select '城建'
insert into news select '新华社'
declare @keys nvarchar(100)
set @keys='房地产+城建+监理'
declare @sql nvarchar(4000)
set @sql='select * from news where keys like ''%'+replace(@keys,'+','%'' or keys like ''%')+'%'''
print @sql --先把SQL语句打印出来分析分析,:)
--exec(@sql)
/*
keys
--------------------------
房地产+城建+监理
城建+监理
城建
*/
drop table news
上述
declare @sql nvarchar(4000)
set @sql='select * from news where keys like ''%'+replace(@keys,'+','%'' or keys like ''%')+'%'''
print @sql --先把SQL语句打印出来分析分析,:)
打印结果:
select * from news where keys like '%房地产%' or keys like '%城建%' or keys like '%监理%'
帮忙详细解释一下 @sql='select * from news where keys like ''%'+replace(@keys,'+','%'' or keys like ''%')+'%'''
怎么得出那样的打印结果? 在线等....
问题点数:20、回复次数:2Top
1 楼scmail81(琳·风の狼(修罗))回复于 2006-03-03 16:40:10 得分 10
其实就是 把字符串 '房地产+城建+监理' 中的 '+' 替换成 '%'' or keys like ''%'
你自己人工替换一下你就明白了阿!Top
2 楼mislrb(上班看看早报,上上CSDN,下班看看电影)回复于 2006-03-03 16:43:25 得分 10
去掉前后单引号,再将两个一起的单引号换成一个单引号,
SQL中''为'的转义符Top




