V jednom dotazu není možné provádět více příkazů. Laravel používá PDO pod kapotou, což tomu brání. Místo toho byste se mohli pokusit zavolat toto přes 2 dotazy, protože @rank
by měl být dostupný po dobu trvání připojení.
DB::query("SET @rank:=0");
DB::query("UPDATE scores SET [email protected]:[email protected]+1 WHERE game_id=? ORDER BY score DESC", array(4));