我在Vertica数据库中有一个N x M
表,我的目标是创建一个具有N*M x M
的新表,使得初始表中的每一行都被M行替换,其中起始项是permuated。SQL:通过排列起始项来扩展现有表
这里是一个2 x 3
表
+-------+-------+-------+
| Item1 | Item2 | Item3 |
+-------+-------+-------+
| A | B | C |
| C | K | L |
+-------+-------+-------+
成为一个6 x 3
表,其中来自原始行的每一行得到了由3个新行,其中项目1始终是一个不同的启动项替代的例子。
+-------+-------+-------+
| Item1 | Item2 | Item3 |
+-------+-------+-------+
| A | B | C |
| B | A | C |
| C | A | B |
| C | K | L |
| K | C | L |
| L | C | K |
+-------+-------+-------+
是否有一个优雅的解决诸如此类的问题,我试着用各种方式加盟,但至今没有运气。谢谢!!
没有优雅的饮料。 –
我很害怕这个答案。 – valenzio