您需要查看PIVOT运算符。
;With T As(SELECt 7 AirQuoteID,'M' Name,49.50 SalesValue UNIOn ALLSELECT 7 AirQuoteID,'N', 23.10 UNIOn ALLSELECT 7 AirQuoteID,'+45',233.20 UNIOn ALLSELECT 7 AirQuoteID,'+100',233.20 UNIOn ALLSELECT 7 AirQuoteID,'+250',2333.10)SELECT AirQuoteID, [M], [N], [+45], [+100], [+250] FROM TPIVOT(MAX(SalesValue)FOR Name IN ([M], [N], [+45], [+100], [+250])) AS pvt;
但是,如果列的值不固定,则需要使用动态SQL。



