【发布时间】:2023-01-13 17:37:08
【问题描述】:
给定一张桌子“数据”带柱子“ID”,“a1”,“a2”,“a3”,以及以下行:
[1, 'b', 300, 10], [2, 'c', 111, 12], [3, 'b', 300, 10], [4, 'b', 300, 10]
有没有办法只选择那些信息存储在列中的行的ID“a1”,“a2,“a3”,不同? 在这种情况下,输出应该是:
[1, 2] 或 [2, 3] 或 [2, 4]
“同一行”的代表 id 是取自第一行、第三行还是第四行都没有关系。 我试过的:
SELECT id
FROM data
GROUP BY a1, a2, a3;
这当然不会工作,除非我禁用ONLY_GROUP_BY_ALL模式,但是我宁愿不禁用此类功能并转向替代方案(如果存在)。
【问题讨论】:
-
您是否了解此类对的数量可能非常大?
-
@Akina 当然可以,但我不需要所有组合,只需要一个组合,它是哪一个并不重要,因为它们代表其他 3 列中的相同数据