3 - ваша лучшая ставка. Его легко читать, позже его легко изменить, и он должен использовать индексы, которые вы определили, и которые вы планируете использовать (все же, проверьте).
- 1 Иногда вам нужно присоединиться к одному столу. Но это не один из них, и объединение каждый раз, когда вам нужно включить новый Subsid_Cde, делает менее читабельным SQL без особого выигрыша.
- 2 Таблицы транзакций имеют тенденцию расти очень большими, поэтому вам НИКОГДА не захочется сканировать всю таблицу.
Так что # 2 определенно отсутствует, если только коды, которые вы будете использовать в своем запросе, не вернут вам все строки в любом случае.