为什么动态SQL语句非都要加‘’‘’‘???、
declare @sql varchar(8000)
set @sql = 'select Name as ' + '姓名'
select @sql = @sql + ' , max(case cast(datepart(mm,dated) as char(5)) when ''' + cast(datepart(mm,dated) as char(5)) + ''' then shuliang else 0 end) [' + cast(datepart(mm,dated) as char(7)) + ']'
from (select distinct dated from hl) as a
set @sql = @sql + ' from hl group by name'
exec(@sql)
最后执行的@sql 怎么合起来啊,为什么都喜欢加''' ,不停的给@sql 搞多了就看不懂了
------解决方案--------------------如果不加,那里面的那一段就不是字符串,就会出错,所以一定得加.
------解决方案--------------------这个其实是字符串的拼接。
------解决方案--------------------你说的是不是转意哦? 在字符串里两个' 转意的意思,就像程序里的\'一样。
------解决方案--------------------在sql字符串里两个'才是一个'
------解决方案--------------------字符串的连接
------解决方案--------------------字符串连接用
------解决方案--------------------其中有两个‘,代表一个''
------解决方案--------------------用来表示字符串的。 拼接动态的字符串来的
------解决方案--------------------这是sql与语句中的用来表示字符的.....