Pri optimalizácii SQL dotazov treba začať kontrolou execution plánu dotazu. Skontrolovať, či sa používajú správne indexy a či sa pristupuje k tabuľkám v správnom poradí. Štandardne treba vždy začať najselektívnejšou tabuľkou (tabuľka, ktorá vráti čo najmenej výsledkov) a postupne pridávať ďalšie tabuľky.
V praxi som sa stretol ale aj so situáciou, kedy optimalizácia samotného dotazu nepostačovala a dosiahli sa jeho limity. Vtedy som musel pristúpiť k redizajnu celého procesu spracovania a prípravy dát tak, aby už následné spracovanie a dotazy zbiehali bez problémov. Alebo sme pristúpili k rozdeleniu veľkých tabuliek na menšie logické celky – partície. Pri správne zvolenom partíciovom kľúči sa dá spracovanie zrýchliť až niekoľkonásobne. Rozdelenie dát do partícií sa môže vhodne doplniť s paralelným spracovaním. Samozrejme za predpokladu, že má server dostatočný procesný výkon.