gpt4 book ai didi

sql - 如何使用 SQL 在同一列中生成排列?

转载 作者:行者123 更新时间:2023-12-04 16:47:11 28 4
gpt4 key购买 nike

我有一个如下所示的表格:

LETTERS
--------
A
B
C
D
E
F
G
H

我想创建一个 View ,以下列方式列出这些字母的所有 3 个字母组合而不重复,即为每个组合分配一个数字。

ViewNew
-------
1 A
1 B
1 C
2 A
2 B
2 D
3 A
3 B
3 E

等等。

以上是否可行?任何帮助将不胜感激。

最佳答案

检查这个。使用 Joins 和 UNPIVOT 我们可以找到字母的所有排列。

        select ID,ViewNew from 
(
select row_number() over(order by (select 1)) AS ID,
C2.LETTERS as '1' ,C1.LETTERS AS '2' ,c3.LETTERS as '3' from #tableName C1,#tableName c2,#tableName c3
where C1.LETTERS != c2.LETTERS and c2.LETTERS ! = c3.LETTERS and c1.LETTERS ! = c3.LETTERS
) a
UNPIVOT
(
ViewNew
FOR [LETTERS] IN ([1], [2], [3])
)as f

OutPut :

enter image description here

关于sql - 如何使用 SQL 在同一列中生成排列?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41456495/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com