set @str='select s_dwjc' --这里是@str,下面是@str1,变量用错了吧?
select @str1=@str1+',(cast s_zhlbmc when '''+ltrim(rtrim(s_zhlbmc))+''' then 1 end ) as ['+ltrim(rtrim(s_zhlbmc))+']' from (select distinct s_zhlbmc from kl_zh) as a1
select @str1=@str1+',(cast s_zhlbmc when '''+ltrim(rtrim(s_zhlbmc))+''' then 1 end ) as ['+ltrim(rtrim(s_zhlbmc))+']' from (select distinct s_zhlbmc from kl_zh) as a1
---应该是case ---不是cast
解决了
就是cast-case
cast 类型转换函数
case 条件语句