optymalizacja zapytania

0

Cześć,
mam problem z optymalizacją zapytania. O co chodzi:
mam tabelę A i tabelę B. Tabela A ma klucz główny w polu ID, jest to główna tabela. W tabeli B ten sam klucz może wystąpić w dwóch kolumnach (może być w jednej a w drugiej null, bądź w obu ten sam klucz, lub też w jednej z dwóch (dwa różne klucze)). Potrzebuję wyciągnąć tylko te wpisy, które polem ID z tabeli A mogę połączyć z tabelą B, gdy występuje przynajmniej w jednej z kolumn.
Na chwile obecną łączę to w sposób:

FROM A INNER JOIN B ON (A.ID=B.KOL1 or A.ID=B.KOL2)

Niestety zapytanie wykonuje się długo. Jest jakaś możliwość optymalizacji tego?

0

A indeksy na B.KOL1 i B.KOL2 są?

2

Wygeneruj plan zapytania i zobacz co się tam ślimaczy. Nie optymalizuje sie "na oko".

1 użytkowników online, w tym zalogowanych: 0, gości: 1