У меня проблема, с которой я работаю с Oracle SQL, которая выглядит примерно так.Oracle SQL - Сравнение строк
ТАБЛИЦА
PurchaseID CustID Location
----1------------1-----------A
----2------------1-----------A
----3------------2-----------A
----4------------2-----------B
----5------------2-----------A
----6------------3-----------B
----7------------3-----------B
Я заинтересован в запрашивая таблицу, чтобы вернуть все случаи, когда же клиент делает покупки в разных местах. Таким образом, для приведенной выше таблицы, я хотел бы:
ВЫВОД
PurchaseID CustID Location
----3------------2-----------A
----4------------2-----------B
----5------------2-----------A
Любые идеи о том, как это сделать? Я не мог придумать, как это сделать, и большинство моих идей похоже, что они будут довольно неуклюжими. База данных, которую я использую, имеет записи 1MM +, поэтому я не хочу, чтобы она выполнялась слишком медленно.
Любая помощь будет оценена по достоинству. Благодаря!
Сколько разных мест, сколько разных клиентов? –
Вопрос - это упрощенная версия того, что я действительно делаю на работе, но в реальной базе данных существует 5 различных значений для переменной, которую я вызываю здесь, здесь (также некоторые нули), и существует около 500 000 разных «клиентов» «. – user1895076
Тогда было бы лучше всего в плане производительности построить все пять наборов для разных местоположений и пересечь их. –