删除 "A "行,因为它的 "目标 "值已经存在于 "B "行的 "源 "值中。

抱歉,标题很混乱。我有一张从A点到B点的基本 “路线 “表,从下图可以看出,ID1622和ID1634基本相同,因为一旦访问了某个点就不能再访问了(1-way),我想去掉其中一个,这样就只有一行从 B708B733.

table image

解决方案:

你可以用 not exists:

select t.*
from mytable t
where not exists (
    select 1
    from mytable t1
    where t1.source = t.destination and t1.destination = t.source and t1.id < t1.id
)

基本上,当存在两行 “镜像 “时,保留最小的那行。id,并驳回另一个。

本文来自投稿,不代表运维实战侠立场,如若转载,请注明出处:https://www.shizhanxia.com/905.html

(0)
上一篇 2022年6月29日 下午4:01
下一篇 2022年6月29日 下午4:01

相关推荐

发表评论

登录后才能评论