从对中检索单个
这是一个SQL查询问题。
如果你有一个像这样的表:
ID1 ID2
1709 1689
1689 1709
1934 1501
1501 1934
并且你想像这样检索:
ID1 ID2
1709 1689
1934 1501
你会怎么做?请注意,(1709, 1689) 和 (1689, 1709) 是相似的对,只是 ID 被移动了。我的目的是从这些相似的元组中获取单个元组。
This is a SQL query question.
If you have a table like this:
ID1 ID2
1709 1689
1689 1709
1934 1501
1501 1934
And you want to retrieve like this:
ID1 ID2
1709 1689
1934 1501
How would you do that? Please note that (1709, 1689) and (1689, 1709) are similar pairs just the IDs being shifted. My purpose is to get a single tuple out of these similar tuples.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
试试这个,它应该适用于任何支持 CASE 的方言(您不指定您使用的产品):
这会将所有行首先转换为具有较低的 ID,然后使用 DISTINCT 删除重复项。
Try this, which should work in any dialect (you don't specify what product you're using) that supports CASE:
This converts all the rows to have the lower ID first, then uses DISTINCT to remove duplicates.