Vì vậy, cuối cùng tôi đã tìm ra nó, Nó đã xảy ra bởi vì rank
hiện là từ khóa dành riêng trong MySQL 8.x.x như được mô tả tại đây .
Sau khi tôi cập nhật tên biến, truy vấn bắt đầu hoạt động.
Một giải pháp thay thế khác là sử dụng back-tick mà tôi nghĩ là bằng chứng trong tương lai nhiều hơn vì nhiều từ khóa được bảo lưu hơn, nó sẽ ngăn SQL của bạn bị hỏng một cách không cần thiết. Ví dụ. Phần sau hoạt động tốt trên MySQL v8.x.x
Vd:
SELECT *, @rank := @rank + 1 AS `rank`
FROM q29wg_jreviews_comments ;