我想选择两行不同的值
Obs x y z
1 23 49 16
2 23 16 83
3 49 16 83
4 23 49 83
5 23 83 75
6 49 83 75
7 16 83 75
8 23 16 75
9 49 16 75
10 23 49 75
11 23 75 42
12 49 75 42
13 16 75 42
14 83 75 42
15 23 83 42
16 49 83 42
17 16 83 42
18 23 16 42
19 49 16 42
20 23 49 42
表名称称为MyData,它是一个20 * 3的表。如果仔细观察行,你总会发现两行具有不同的价值......我希望它们都出来并制作一个新的10 * 6表。
例如
23 49 16应与83 75 42结合
23 16 83应与49 75 42结合
...
决赛桌应如下:( 10 * 6桌)
a b c d e f
23 49 16 83 75 42
23 16 83 49 75 42 ...
答案 0 :(得分:1)
如果您指的是所有行具有不同值的所有行的自我加入:
SELECT *
FROM tab t1
JOIN tab t2
ON t1.x NOT IN (t2.x,t2.y,t2.z)
AND t1.y NOT IN (t2.x,t2.y,t2.z)
AND t1.z NOT IN (t2.x,t2.y,t2.z)