У меня есть следующие требования для объединения 3 таблиц
a) Table T1 - large physical table with 100 Million rows
Index columns: C1, C2, C3 in this order
b) Table T2 - Temp table with 50 records
contains C2 & additional columns. No Index
c) Table T3 - Temp table with 100 records
contains C3 & additional columns. No Index
Таблицы T2 и T3 не имеют общих столбцов
Я попытался извлечь данные из T1, T2, T3, как показано ниже:
Select T1.*, T2.*, T3.*
from T1
Inner join T2 (on T1.C2 = T2.C2)
Inner join T3 (T1.C3 = T3.C3)
where
T1.C1 = a constant value (coming from my program).
Объяснение приведенного выше запроса показывает, что в T1 сканирование индекса выполнялось с использованием только 1 столбца.(Я полагаю, что это T1.C3, как я указал в предложении WHERE)
Запрос выполняется нормально, но занимает немного больше времени.Есть ли лучший способ кодировать запрос для вышеуказанного требования?
Любые входные данные приветствуются