1樓:匿名使用者
--假設表名叫tt,由於使用了聚合函式,所以會取消null值,結果中的null被顯示為0
declare @s1 varchar(8000)
declare @s2 varchar(8000)
declare @s3 varchar(8000)
declare @sql varchar(8000)
set @s1 = ''
set @s2 = ''
set @s3 = ''
--構建組成列名的變數
select @s1 = @s1 + name+'=sum(case when name = '''+name+''' then 分數1 else 0 end), ',
@s2 = @s2 + name+'=sum(case when name = '''+name+''' then 分數2 else 0 end), ',
@s3 = @s3 + name+'=sum(case when name = '''+name+''' then 分數3 else 0 end), '
from(
select distinct name
from tt
) a--整理構建後的字段變數
set @s1 = '''分數1'' as 分數,'+left(@s1,len(@s1) - 1)
set @s2 = '''分數2'' as 分數,'+left(@s2,len(@s2) - 1)
set @s3 = '''分數3'' as 分數,'+left(@s3,len(@s3) - 1)
set @sql = 'select '+@s1+' from tt union all select '+@s2+' from tt union all select '+@s3+' from tt'
--執行
exec(@sql)
----------結果-----------------------------
分數 aaa bb cc
----- ----------- ----------- -----------
分數1 110 43 43
分數2 55 54 0
分數3 97 65 0
--------
以上語句在查詢分析器執行通過,可能是頁面的問題把語句分開了 ,對了,你的是什麼資料庫?
python語法錯誤SyntaxError invalid syntax
通常python報syntaxerror invalid syntax錯誤 中的冒號問題,忘記了加冒號。塊縮排結構錯誤,如縮排的空格,tab定義不一致。縮排中複製了不可以見字元,複製容易產生此問題。根據最佳實踐,建議使用4個空格來縮排。你的 中,第三行的分號有問題。 寂寞就好 print要加括號是p...
python簡單語句提示語法錯誤
你的print hello world 這一句有問題h前面的引號對的,但是右引號你用的中文符號需要改為 print hello world 這樣就對了 python版本2.3.4 這一句不要放在程式裡面 請把錯誤列出來 你的語句沒問題的,我估計是你的python沒有安裝吧 把丟擲的異常貼出來呀 py...
python提示我語法錯誤,python語法錯誤
最後少個括號吧 上面一行也少個 因為heads那裡就少個括號.python語法錯誤 python提示我語法錯誤 5 while迴圈裡面的第一行中,最後缺少個括號 你把while迴圈裡面的逗號去掉試試吧 你又沒有print,要逗號幹嗎啊,它是迴圈的,沒必要加逗號 你的程式是完整的麼?從13行開始括號都...