mysql - 查询从具有添加约束的单个列中获取不同的对
问题描述
我将如何从具有一对不应重复的约束的列中获取不同的对?所以我有一个这样的查询
SELECT DISTINCT s1.author_set_s_author_id,
s2.author_set_s_author_id
FROM submission_record_author_set s1, submission_record_author_set s2
WHERE s1.author_set_s_author_id != s2.author_set_s_author_id;
这让我从该列中获得了所有可能的配对,但有一个约束,它不能与其自身配对,但这仍然可能发生:(1,2) 和 (2,1)。
在我的情况下,永远不应该重复一对。所以一对 1 和 2 应该只出现一次。关于如何将该约束添加到我的 SQL 查询的任何建议?
解决方案
您可以简单地将子句中的!=
比较替换为(to get instead of ) 或(to get instead of ):WHERE
<
(1,2)
(2,1)
>
(2,1)
(1,2)
SELECT DISTINCT s1.author_set_s_author_id,
s2.author_set_s_author_id
FROM submission_record_author_set s1, submission_record_author_set s2
WHERE s1.author_set_s_author_id < s2.author_set_s_author_id;
推荐阅读
- javascript - javascript中的正则表达式不仅允许字段中的空格,还允许带有空格的字符串并且还允许空字段
- javascript - 第一人称总是加分
- python - 使用python重命名多个文件
- angular - 当元素未出现在页面加载时,Angular 6 Animate CSS
- c# - 在 C# 中快速从 100+ GB 文件中读取行的最快方法
- c# - 为 Google Calendar API 请求设置超时?
- autohotkey - 执行 winkey 后任何可能的热键组合的任务
- php - jquery ajax php - 不止一次运行jquery代码的问题
- php - 如何使用 php json 创建正确的维度数组
- javascript - 从 ng-bootstrap Modal 删除后用新数据重新加载组件