Hej,
Mam zoptymalizować zapytanie, gdzie z dwóch tabelek po 30k rekordów mam zrobić produkt. Czyli na wyjściu powinno być 30k * 30k rekordów.
Rzecz w tym, że w kodzie wygląda to tak:
- Najpierw pobranie wszystkiego z pierwszej tabelki
- Następnie iteracja i dla każdego z pierwszej tabelki jest robione nowe zapytanie (w tym nowym zapytaniu pojawiają się podzapytania powiązane z trzecią tabelką około 200 rekordów).
Dla mnie dziwne, było dlaczego po prostu nie zrobi się inner joina z 3 tabelek. Podobno pośrednia tabelka jaka może powstanie okaże się zbyt duża dla bazy.
Jak można w takim razie to inaczej rozwiązać? Myślałem, że z pierwszej tabelki będę brał porcjami np. po 100-1000 rekordów, a resztę robił poprzez potrójne złączenie joinem.