Рассмотрим следующие две таблицы в SQL Server 2008:
Таблица1, которая имеет только одно поле int: Term1
Таблица2, которая также имеет только одно поле int: Term2. (Да, я знаю - мне не хватает воображения.)
.
Допустим, я вставляю следующие значения в таблицу 1: 1, 2, 5, 5, 6, 7
И я вставляю следующие значения в Таблицу2: 3, 4, 5, 5, 8, 9
.
Я хочу выполнить запрос, в котором я найду термины, общие для обеих таблиц, и хочу, чтобы они были парными. Поэтому, когда есть дубликаты (как в данном случае - 5 и 5), я хочу, чтобы для каждой найденной пары была отдельная строка. Другими словами, Я бы хотел, чтобы две пары из 5 вернули в качестве двух общих терминов.
Как мне это сделать? Если я выполню простое внутреннее объединение таблиц Table1 и Table2, я получу четыре пары возвращенных 5-х.
.
РЕДАКТИРОВАТЬ: Я должен был сделать это более ясным, меня интересуют любые общие ценности, а не только дубликаты. Дело в том, что с дубликатами сложнее иметь дело.
Поэтому, если я добавлю следующие значения в Таблицу 1: 1, 2, 5, 5, 5, 6, 7, 8
И я вставляю следующие значения в Таблицу 2: 3, 4, 5, 5, 5, 6, 9, 0
Тогда я хочу видеть 5, 5, 5, 6 в качестве общих терминов.