0
我想实现以下目标:枢轴两列
我有两列 - 一列有列ID,一列有属于此列的数据。
原始数据:
+---------+--------+
| ColName | Values |
+---------+--------+
| Column1 | 13 |
| Column1 | 86 |
| Column1 | 16 |
| Column1 | 18 |
| Column1 | 2 |
| Column1 | 11 |
| Column1 | 28 |
| Column1 | 3 |
| Column1 | 13 |
| Column1 | 13 |
| Column1 | 90 |
| Column2 | 35 |
| Column2 | 69 |
| Column2 | 26 |
| Column2 | 71 |
| Column2 | 32 |
| Column2 | 69 |
| Column2 | 87 |
| Column2 | 58 |
| ColumnN | 13 |
| ColumnN | 54 |
| ColumnN | 79 |
| ColumnN | 86 |
| ColumnN | 47 |
| ColumnN | 37 |
| ColumnN | 65 |
| ColumnN | 49 |
| ColumnN | 89 |
| ColumnN | 27 |
+---------+--------+
我希望得到以下结果:
+---------+---------+---------+
| Column1 | Column2 | ColumnN |
+---------+---------+---------+
| 13 | 35 | 13 |
| 86 | 69 | 54 |
| 16 | 26 | 79 |
| 18 | 71 | 86 |
| 2 | 32 | 47 |
| 11 | 69 | 37 |
| 28 | 87 | 65 |
| 3 | 58 | 49 |
| 13 | NULL | 89 |
| 13 | NULL | 27 |
| 90 | NULL | NULL |
+---------+---------+---------+
我需要这是动态的,如ID字段列数是不知道的。 另外,Values字段中的数据完全是任意的。它可以是任何行和任何数量的行。
我使用crosstab
函数做了一些测试,但它似乎只适用于原始数据中有第三列的情况。
任何指导?
简单它不是从你的例子清楚你从输入到输出表想正是映射。你如何从输入行组装输出行?每个“价值”值都会有一行吗?请编辑您的问题以完成以下语句:列(c1,...)的行(v1,...)在输出中,当且仅当.... PS为什么要这样做?你如何处理这件事? (显然输入和输出都很重复。) – philipxy
您是否满意re dum/dee? – philipxy