我有一个表格,其中的数据如下所示:
pageno groupid
100100 mpadilla
100101 Mine
105101 swachman
100100 swachman
105101 Mine
107101 mpadilla
我希望数据在 SQL Server 2000 中看起来像这样(交叉表/数据透视表)(在 SQL Server 2000 中不可PIVOT
用):
pageno Mine mpadilla swachman
100100 -- X X
100101 X -- --
105101 X -- X
107101 -- X --
这是我基于本教程http://msdn.microsoft.com/en-us/library/aa172756.aspx的静态解决方案:
SELECT pageno,
[Mine] = MAX(CASE groupid WHEN 'Mine' THEN 'X' ELSE '--' END),
[mpadilla] = MAX(CASE groupid WHEN 'mpadilla' THEN 'X' ELSE '--' END),
[swachman] = MAX(CASE groupid WHEN 'swachman' THEN 'X' ELSE '--' END)
FROM #DistinctPages
GROUP BY pageno
ORDER BY pageno
我需要的是 SQL Server 2000 的动态交叉表解决方案。我尝试根据我的情况调整它,但我就是不明白:SQL Server 2000 中的行到列
任何指导都会有所帮助!