Daftar pilih tidak selalu dapat dievaluasi terakhir karena ORDER BY dapat menggunakan alias yang ditentukan dalam daftar pilih sehingga harus dijalankan setelahnya. Misalnya:
SELECT foo+bar foobar FROM table1 ORDER BY foobar
Saya akan mengatakan bahwa secara umum urutan eksekusi bisa seperti ini:
- DARI
- DIMANA
- GROUP MENURUT
- PILIH
- PUNYA
- PESAN OLEH
Klausa GROUP BY dan WHERE dapat ditukar tanpa mengubah hasilnya, seperti halnya HAVING dan ORDER BY.
Pada kenyataannya hal-hal yang lebih kompleks karena database dapat menyusun ulang eksekusi sesuai dengan rencana eksekusi yang berbeda. Selama hasilnya tetap sama, tidak masalah urutan eksekusinya.
Perhatikan juga bahwa jika indeks dipilih untuk klausa ORDER BY, baris-baris tersebut mungkin sudah berada dalam urutan yang benar ketika dibaca dari disk. Dalam hal ini klausa ORDER BY tidak benar-benar dieksekusi sama sekali.