Mam tabelę, która zawiera kolumnę, która działa jako "flaga", która jest używana do decydowania, z której tabeli pobierać dodatkowe informacje (tj. Wartość 1 pobiera z tabeli 1, 2 z tabeli 2 itd.). Zwykle chciałbym po prostu dołączyć do tabeli za pomocą indeksów/kluczy. Jednak tabela, do której mogłem się przyłączyć, zawierała informacje, które można znormalizować w osobne tabele, co pozostawia mnie do tej sytuacji użycia kolumny, aby zdecydować, do której tabeli się przyłączyć.Optymalizacja SQL - Dołącz do różnych tabel na podstawie wartości kolumny
Oto moje pytanie: jaki jest najskuteczniejszy sposób łączenia różnych tabel na podstawie wartości uzyskanej w tej kolumnie?
Oto dwa sposoby, w jaki wiem, jak wykonać to zadanie. Jestem całkiem pewny, że są one zarówno nie optymalne rozwiązanie:
Pull informacji z moim głównym stole (zawierających wartość kolumny, które decyduje, które stół do przyłączenia), a następnie za pośrednictwem kodu w mojej aplikacji wysłać dodatkowe zapytania do uzyskać resztę informacji.
Dołącz do szalonego, zwróć kolumny każdego stołu (nawet jeśli nie są używane). Następnie, za pomocą mojego kodu, zignoruj puste tabele, które nie są potrzebne.
Co powiesz na punkt 1. Ale umieść go na procedurze przechowywanej, a nie na kodzie aplikacji. –