memiliki
Ini akan lambat, tetapi having
klausa akan dijalankan setelah semua pemilihan, penggabungan, tempat dan pengelompokan telah selesai dan diselesaikan sepenuhnya.
Satu-satunya masalah adalah having
tidak menggunakan indeks, sedangkan where
memang menggunakan indeks.
SELECT
ranking stuff
FROM
lot of tables
WHERE simple_condition
HAVING filters_that_run_last
Buat gabungan Anda eksplisit
Perhatikan bahwa Anda tidak perlu mencampur gabungan eksplisit dan implisit.
Jika Anda mau gabungan silang, Anda dapat menggunakan cross join
kata kunci.
....
) AS Ranking
CROSS JOIN (SELECT @curr := null, @prev := null, @rank := 0) InitVars
WHERE
Ranking.regional_id = 1003