【发布时间】:2018-07-15 12:43:39
【问题描述】:
我有一个包含两列的表:id 和 content。
content 是一个 json 字段。
我需要删除 jsons 中属性的重复项。
这是我拥有的 json 示例:
{
"num_aire_ospf": "",
"name": "name1",
"rpv": "119"
}
这是我需要删除的重复项目的示例:
ID | Content
--------------------------------------------------------------------------
1 | {"num_aire_ospf": "", "name": "name1", "rpv": "119" }
2 | {"num_aire_ospf": "", "name": "name1", "rpv": "119" }
3 | {"num_aire_ospf": "", "name": "name1", "rpv": "119" }
4 | {"num_aire_ospf": "", "name": "name1", "rpv": "120" }
5 | {"num_aire_ospf": "", "name": "name8", "rpv": "150" }
6 | {"num_aire_ospf": "", "name": "name8", "rpv": "150" }
7 | {"num_aire_ospf": "", "name": "name8", "rpv": "151" }
我想删除第一行同名的行。
在这个例子中,我想做一个查询来删除第 1,2,3,5,6 行并且只保留这些行:
ID | Content
--------------------------------------------------------------------------
4 | {"num_aire_ospf": "", "name": "name1", "rpv": "120" }
7 | {"num_aire_ospf": "", "name": "name8", "rpv": "151" }
所以只保留最后一行同名。
所以对于“name1”,我需要删除以“name1”为名称的前 3 行。 而对于“name8”,我需要删除以“name”8 作为名称的前 2 行。
它必须是动态的,因为我有很多同名的行,我想保留最后一行。
【问题讨论】:
标签: sql json postgresql duplicates