SQL排列

时间:2015-08-21 07:22:06

标签: sql permutation

我有一个包含以下信息的数据表

ID | Value
1  | a
1  | b
1  | c
2  | a
2  | b

我需要构建一个目标表,它具有ID

的所有2级排列

结果

ID | Value1 | Value 2
1  |   a    | b
1  |   a    | c
1  |   b    | a
1  |   b    | c
1  |   c    | a
1  |   c    | b
2  |   a    | b
2  |   b    | a

1 个答案:

答案 0 :(得分:0)

这很简单。您需要将条件本身加入您的表格:

  

id应该相等

     

值应该不同

示例

   select a.id, a.value value1, b.value value 2 
    from table a 
      join table b 
      on a.value!=b.value and a.id=b.id