Я не вижу ничего плохого в вашем запросе, и (хороший) совет, данный в других ответах, поможет вам понять, что происходит в деталях.
Однако, в принципе, вы должны иметь в виду порядок данных в каждой таблице и то, сгруппированы ли данные или распределены. Все хорошо говорят: «Требуется только 20 мс, чтобы найти», но сколько времени потребуется для сопоставления двух наборов данных?
Если известно, что оба набора данных находятся в одном и том же порядке, СУБД может выровнять их относительно быстро. Но СУБД может знать это только по индексу.
Если у вас есть индекс для Table1, который является Field8, а затем Field6, все «значения» будут объединены вместе, а затем упорядочены Field6. Однако если у вас есть индекс Field6, то Field8, записи, которые вас интересуют, будут упорядочены, но распределены по индексу. Наконец, если у вас нет индексов в этих полях, все будет случайным образом упорядочено и распределено.
В зависимости от этих типов факторов, СУБД может выполнить ваш запрос буквально десятками. Для достижения наилучшей производительности необходимо понять, что должна делать СУБД, а затем дать ей индекс (ы), чтобы сделать ее максимально простой.