删除几乎重复的行 [英] Remove almost duplicate rows

查看:115
本文介绍了删除几乎重复的行的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述



表(com1,com2)

  A || B 
B || A
C || D
D || B
B || D

如果我有2行:A || B和B || A,我想删除其中一个(我不在乎哪一个)。



所以要获取:

  A || B 
C || D
D || B

我已经阅读了很多关于重复行的问题,但我找不到这样的东西。感谢任何帮助。

解决方案

我认为您的问题的解决方案应如下所示:

  SELECT 
t1.val1,t1.val2
FROM table AS t1
JOIN表AS t2 ON(
t1.val1 = t2.val2)AND(t1.val2 = t2.val1)
)WHERE t1.val1 <= t1.val2

其中是您的表的名称, val1 val2 是该列中的列名表。


I have an Sqlite3 database with a table like this:

Table(com1, com2)

A || B
B || A
C || D
D || B
B || D

If I have 2 rows: A || B, and B || A, I want to delete one of them (I don't care which one).

So to obtain:

A || B
C || D
D || B

I've read the many asks about duplicate rows but I cant find something like this. Thanks for any help.

解决方案

I think solution for your problem should look like this:

SELECT
    t1.val1,t1.val2
FROM table AS t1
JOIN table AS t2 ON (
    (t1.val1=t2.val2) AND (t1.val2=t2.val1)
) WHERE t1.val1<=t1.val2

where table is the name of your table and val1 and val2 are names of columns in that table.

这篇关于删除几乎重复的行的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆