SQL - 创建唯一值的映射表

时间:2016-05-06 08:34:26

标签: sql h2

我在弄清楚以下方法时遇到了一些麻烦: 我有一张包含车辆信息的表格:

| id | vehicle_make | vehicle_colour | reg_number |

我的任务是创建一个具有以下结构的映射表​​:

| id | identifier | current | new |

标识符可以是1,2或3,具体取决于它是否是我们映射的品牌,颜色或注册号。当前字段应包含vehicle_make,vehicle_colour和reg number中的每个可能的唯一值。我正在努力弄清楚的部分是新列必须包含当前的所有唯一值,但交换为具有相同标识符的另一个值以随机化数据。

例如,在映射表中,您可以:

| id | identifier | current   | new     |
| 1  | 2          | 'red'     | 'blue   |
| 2  | 2          | 'blue'    | 'green' |
| 3  | 1          | 'vauxhall | 'audi   |
| 4  | 3          | 'W238K'   | 'Y659WE |

因此,在新列中,如果当前列中有颜色(标识符2),则总是会有另一种颜色,而车辆品牌和注册号则相同。

所有值必须映射到不同的值,current current和new列都必须包含唯一值,例如red不能映射到蓝色和绿色。

0 个答案:

没有答案