Формула SQL соединения ODBC Excel, показывающая много дубликатов - PullRequest
0 голосов
/ 06 ноября 2019

Когда я использую свой код, я получаю больше дубликатов, чем могу обработать.
Я немного неопытен в SQL, поэтому может возникнуть проблема с тем, как я его пишу.

SELECT
OTP, TRDT, TRTM,  OPER, PCKZ,  SKU,  RFUN
FROM COP200, RAP100, RHB, OCB
WHERE ORDN = LORDNO
AND  AISL =  LAISL
AND  BAY =  LBAY
AND  LEVL =  LLEVL
AND  TRDT BETWEEN (CURRENT_DATE -1 DAY) AND CURRENT_DATE
AND LPAD(REPLACE(PCN,''”), 16, 0) =  TREF

Код работает нормально, пока я не добавлю в таблицу «COP200».
Таблица COP200 содержит только один фрагмент строки, который мне нужен (но содержит много данных), и связана с этой линией (PCN является частью COP200)

AND LPAD(REPLACE(PCN,''”), 16, 0) =  TREF

Поэтому, если я уберу эту строку выше, а строку ниже

SELECT OTP

, я получу 0 дубликатов.

Нужно ли писать код по-другому? Должен ли я использовать JOIN вместо ГДЕ + И?

...