在SQL中,行转列(也称为Pivot操作)通常用于将行数据转换为列数据。不同的数据库系统可能有不同的实现方式,以下是三种常见的行转列方法,分别适用于不同的数据库类型: 1. 使用CASE WHEN语句(适用于大多数数据库) sql SELECT 列1, MAX(CASE WHEN 列2 = '值1' THEN 列3 ELSE NULL END) AS 列名1, MAX(...
set @sql='' select @sql=@sql + ','+rtrim(收费类型)+'=sum(case 收费类型 when '''+rtrim(收费类型)+''' then 金额 else 0 end)' from #tab group by 收费类型,排序 order by 排序 exec('select 单据号,日期'+@sql+'from #tab group by 单据号,日期 order by 单据号' ) DROP TABLE #...