Jadi saya akhirnya menemukan jawabannya, itu terjadi karena rank
sekarang menjadi kata kunci yang dicadangkan di MySQL 8.x.x seperti yang dijelaskan di sini .
Setelah saya memperbarui nama variabel, kueri mulai berfungsi.
Alternatif lain adalah menggunakan back-ticks yang menurut saya lebih merupakan bukti masa depan karena lebih banyak kata kunci yang dicadangkan, itu akan mencegah SQL Anda rusak secara tidak perlu. Misalnya. Berikut ini berfungsi dengan baik di MySQL v8.x.x
Misal:
SELECT *, @rank := @rank + 1 AS `rank`
FROM q29wg_jreviews_comments ;