MSSQL列转行例子,
SELECT SheetID, MAX(CASE WHEN book.SheetType = 20 AND book.Level = 1 THEN book.AccValue ELSE 0 End) FirstCommission, MAX(CASE WHEN book.SheetType = 20 AND book.Level = 2 THEN book.AccValue ELSE 0 End) SecondCommission, MAX(CASE WHEN book.SheetType = 20 AND book.Level = 3 THEN book.AccValue ELSE 0 End) ThirdCommission, MAX(CASE WHEN book.SheetType = 15 THEN book.AccValue ELSE 0 End) SaleCommission FROM BasAccountBook book WITH (nolock) WHERE book.SheetType IN (20,15) GROUP BY book.SheetID