【发布时间】:2018-04-10 18:43:57
【问题描述】:
我有下表
type attribute order
1 11 1
1 12 2
2 11 1
2 12 2
3 15 1
3 16 2
4 15 1
4 16 2
我需要了解哪些类型具有相同的属性,然后为它们分配一个新的 id。如果有帮助,订单列也可以,因为每个属性只能有一个订单,但您不需要使用它。
理想情况下,结果集如下所示,其中每个类型都有一个基于第一个表中的属性的新 id。
type new_id
1 1
2 1
3 2
4 2
我正计划尝试根据订单列旋转表格并连接属性 id 以创建新 id,但我不能使用交叉表,并且类型具有的属性数量可能会有所不同,我需要考虑这一点.
有什么建议可以在这里做什么吗?
【问题讨论】:
-
如何计算新的id?
-
它们只需要是新的唯一 ID。
-
您能否澄清“哪些类型具有相同的属性/顺序组合”的意思?
-
我真的只需要根据属性对类型进行存储。所以所有具有属性 11 和 12 的类型都需要具有相同的 new_id
标签: postgresql join pivot