两表关联的分组的交叉表,如何使用sql语句完成。目标如下图

要求只用1个sql语句,可以复杂,但不能使用视图或者存储过程,数据库为sql server
最新回答
雪紫∮冰雨

2022-05-19 16:06:42

SELECT
*
FROM
(
SELECT
t1.km, t1.[year], t2.[user], t2.[money]
FROM
#t1 t1 JOIN #t2 t2
ON (t1.id = t2.fid)
) subQuery
PIVOT(
SUM(subQuery.[money])
FOR subQuery.[year] IN ([2008], [2009], [2010] )
) tmp
order by
1