Думата rank
е запазена дума в MySql 8.
Затова използвайте друго име на псевдоним или поставете отметка обратно върху името на псевдонима.
А в MySql 8 можете да използвате функции на прозореца
SELECT
mapname,
DENSE_RANK() OVER (PARTITION BY mapname, zonegroup, steamid, style ORDER BY runtime DESC) AS `rank`,
COUNT(*) OVER (PARTITION BY mapname, zonegroup, steamid, style) AS total
FROM ck_bonus
WHERE steamid = '%s' AND style = %i;