sql - 获取值的所有排列 - 成对

标签 sql sql-server t-sql permutation

我有 X 个值通过 CSV 传递到表中 - 因此我将 99315,99316,99223 并将它们拆分到单列临时表中 - CSV 中的每个值都放入一行。

我需要做的是获得成对的值的每个排列 - 所以 - 像这样:

Col1     Col2
99315    99316
99315    99223
99316    99315
99316    99223
99223    99315
99223    99316

最佳答案

select t1.col1, t2.col1 col2
from mytable t1
cross join mytable t2

如果您想排除类似的值,请添加

where t1.col1 <> t2.col1

关于sql - 获取值的所有排列 - 成对,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26061552/

相关文章:

sql - 创建 Microsoft SQL 临时表(不声明列——如 Informix)?

SQL Server 按替代分组而不丢失行

sql-server - 多数投票 SQL

sql - 存储过程的 WHERE 子句中的条件

sql - 对多列使用NVL-Oracle SQL

java - Jackson 无法序列化 Hibernate 实体

sql - 从所有行中选择时如何选择数据库中每条记录的前 6 条记录

mysql - SQL:将每个 ID 的值合并到一个变量中

sql - 将大型项目从 MySQL 移植到 Oracle 时,我必须注意什么?

sql-server - 无法将 NULL 值插入列中(使用 CASE 进行更新,SQL Server)