ник: Гоблин
Я имею в виду связь один-много. Уж коли индексированное поле делать, стало быть для этого. Если во второй табле есть то, чего нет в первой с индексированным полем, то связи не получится. Будет отбивать, что нет целостности данных.
Создай запрос без подчиненных записей.
А вообще с 5 млн записями трудно будет.