QGis SQL 查询 - "Deleting almost duplicates entries"

QGis SQL Query - "Deleting almost duplicates entries"

我有一个 table,在另一个 table 的所有点之间有一个距离矩阵。在距离矩阵上,我只保留了距离小于100m的法线。 我将彼此距离小于 100 m 的点称为重复条目。但是在距离矩阵上,每个重复条目占用 2 行 距离矩阵是这样的:

InputID TargetID Distance

   1       2       75

   1       3       35

   2       1       75

   3       1       35

我只想保留其中一个重复项,这意味着在前面的示例中我只想保留 1 的 ligne,因为 2 和 3 距离不到 100m 1 的。但是如果我只保留距离矩阵上的 1,我也只需要保留原始 table.

上的 1

我用的是QGis的SQL查询工具,但我不太会编程。谁能帮帮我?

谢谢!

您可以在连接中使用一些子查询来检索要删除的值

delete from my_table  m2
inner join (
  select m.distance, min(m.InputId) min_id
  from my_table  m.
  inner join (
    select distance, count(*)
    from my_table 
    group by Distance 
    having count(*) > 1 
  ) t on t.distance  = m.distance
  group by distance 
) t2 on t2.distance = m2.distance and t2.min_id  = m2.InputId