sql - 如何获得每一个可能的不同组合?
问题描述
鉴于以下
CREATE TABLE #Test
(
ItemName VARCHAR(2)
);
INSERT INTO #Test (ItemName)
VALUES ('x1'),
('x2'),
('x3'),
('x4');
无论值的顺序如何,如何获得所有可能的组合?例如 x1, x2 与 x2, x1 相同,所以我不需要两者。此外,x1, x2, x3 将与 x3, x1, x2 或 x2, x1, x3 相同
输出将是:
x1, x2
x1, x3
x1, x4
x2, x3
x2, x4
x3, x4
x1, x2, x3
x1, x2, x4
x1, x3, x4
x2, x3, x4
x1, x2, x3, x4
我的值可能会达到 x16,因此为了示例,我试图保持简单。
我读过很多类似的问题,但它们都只结合了 2 个值。
谢谢!
解决方案
推荐阅读
- python - 将同一网格行中的各种 LabelFrame 小部件放在一起
- python - 避免重复,用循环?
- c++ - 带有 std::unique_ptr 的 BST:在参数中使用右值引用有什么区别?
- laravel - Laravel 后端 (API) 路由和登录页面安全性
- java - micronaut ssl:java.library.path 中没有 netty_tcnative_windows_x86_64
- variable-assignment - BMC Remedy ITSM 中的自动分配
- html - 如何使用特定类访问 ul 的值
- amazon-sns - SNSEvent 对象的 getRecords() 返回多少条记录?
- php - 您必须在第 31 行启用 intl 扩展才能使用 CakePHP
- javascript - 在烧瓶项目中编辑数据表行