Мой вопрос очень похож на Ограничение LEFT JOIN , с вариацией.
Предположим, у меня есть таблица SHOP и другая таблица LOCATION. Location - это своего рода дочерняя таблица таблицы SHOP, в которой есть два интересующих столбца, один - это ключ деления (называемый просто KEY) и номер «SHOP». Это соответствует номеру «НЕТ» в таблице SHOP.
Я пробовал это левое внешнее соединение:
SELECT S.NO, L.KEY
FROM SHOP S
LEFT OUTER JOIN LOCATN L ON S.NO = L.SHOP
но я получаю много дубликатов, так как есть много мест, принадлежащих одному магазину. Я хочу устранить их и просто получить список записей "магазин, ключ" без дубликатов.
Данные верны, но дубликаты выглядят следующим образом:
SHOP KEY
1 XXX
1 XXX
2 YYY
3 ZZZ
3 ZZZ etc.
Я бы хотел, чтобы данные отображались следующим образом:
SHOP KEY
1 XXX
2 YYY
3 ZZZ etc.
МАГАЗИН стол:
NO
1
2
3
РАСПОЛОЖЕННЫЙ стол:
LOCATION SHOP KEY
L-1 1 XXX
L-2 1 XXX
L-3 2 YYY
L-4 3 YYY
L-5 3 YYY
(база данных ORACLE 10g)