删除 table 中的重复列集

remove duplicated set of columns in table

我创建了共现 table 如下。

col1 col2 count
a    b    10
b    a    10
c    d    7
d    c    7

我想像这样不重复地保留同现行。

col1 col2 count
a    b    10
c    d    7

我该怎么做?

一个简单的方法是:

select col1, col2, count
from t
where col1 < col2;

如果你真的想改变table,你可以这样做:

delete t from t
    where col1 > col2;

这假定所有列对都在数据库中。

插入或选择时,做这样的事情而不是col1, col2:

LEAST(col1, col2), GREATEST(col1, col2)