我有一张这样的桌子...

CustomerID   DBColumnName   Data
--------------------------------------
1            FirstName      Joe
1            MiddleName     S
1            LastName       Smith
1            Date           12/12/2009
2            FirstName      Sam
2            MiddleName     S
2            LastName       Freddrick
2            Date           1/12/2009
3            FirstName      Jaime
3            MiddleName     S
3            LastName       Carol
3            Date           12/1/2009

我想要这个...

使用PIVOT可以吗?

CustomerID  FirstName   MiddleName          LastName        Date
----------------------------------------------------------------------
1           Joe             S               Smith           12/12/2009
2           Sam             S               Freddrick       1/12/2009
3           Jaime           S               Carol           12/1/2009

推荐答案

你可以使用最大聚合,它仍然有效.一个值的最大值=该值..

在这种情况下,还可以在customerid上进行5次自联接,按每个表引用的dbColumnName进行筛选.也许效果会更好.

Sql相关问答推荐

如何解决Error:operator is not unique:unknown—unknown在一个动态SQL查询?""""

使用SQL旋转表的列(Snowflake)

转换表中的数据

从原始表列中经过JSON字符串化的对象数组构建视图

每年独特口味的冰淇淋数量

如何为该查询编写正确分区依据

Oracle PL/SQL:解决DBMS输出大小限制的问题

需要从键-值对数据中提取值

TSQL如何为群分配号码

如何解决错误;ORA-00911:无效字符;在果朗?

AdventureWorks 查询

Postgresql - 如何根据阈值计算累积和

对于小数据集,EF / SQL 语句花费的时间太长

将最近的结束日期与开始日期相匹配

创建具有多个子查询的 SQL 视图

计算组内多个日期间隔go 年的累计天数

SQL Server - 判断 ids 层次 struct 中的整数 (id)

标量子查询中的窗口函数不起作用

HIVE SQL where 子句未按预期工作

如何仅在满足条件时才按顺序在 SQL 中计数?