Итак, у меня есть большой объем данных SQL, который выглядит примерно так:
user | src | dst
1 | 1 | 1
1 | 1 | 1
1 | 1 | 2
1 | 1 | 2
2 | 1 | 1
2 | 1 | 3
Я хочу отфильтровать пары (src, dst), которые являются уникальными для одного пользователя (даже если у этого пользователя есть дубликаты), оставив только те пары, принадлежащие более чем одному пользователю:
user | src | dst
1 | 1 | 1
1 | 1 | 1
2 | 1 | 1
Другими словами, пара (1,2) уникальна для пользователя 1 и пара (1,3) для пользователя 2, поэтому они отбрасываются, оставляя после себя только все экземпляры пары (1,1).
Редактировать : Для пояснения, я не интересуюсь отфильтрованными парами, мне нужно все строки, в которых пары не уникальны.
Есть идеи? В ответах на вопрос ниже можно найти неуникальные пары, но моего SQL-фу недостаточно, чтобы справиться со сложностью требования, что они также принадлежат нескольким пользователям.
Как выбрать не «уникальные» строки