Страхувам се, че нямам MariaDB под ръка, но бихте ли опитали следното, само за да видите как се извеждат потребителските променливи:-
SELECT *
FROM test_golf_player p
LEFT JOIN
(
SELECT pid, leaguepoints, @Sequence:=IF(@PrevPid = pid, @Sequence + 1, 0) AS aSequence, @PrevPid := pid
FROM
(
SELECT pid, leaguepoints
FROM test_golf_card
ORDER BY pid, leaguepoints DESC
) Sub1
CROSS JOIN (SELECT @PrevPid := 0, @Sequence := 0) Sub2
) gC
ON p.pid = gC.pid
ORDER BY p.name DESC
РЕДАКТИРАНЕ - Правейки малко разследване, гледайки вашите резултати, изглежда, че MariaDB е игнорирала ORDER BY в подзаявката. Следователно поредният номер е в произволен ред и също така се нулира, когато pid се промени (което прави произволно, тъй като редът не е фиксиран). Малко гугъл и изглежда, че това е умишлена характеристика на MariaDB. Стандартът на SQL дефинира таблица като неподреден набор от редове, а подизборът се третира като таблица, следователно редът от се игнорира - https://kb.askmonty.org/en/why-is-order-by-in-a-from-subquery -игнорирано/ .
Това е малко недостатък. Не съм сигурен, че има работа, тъй като в момента не се сещам за такава. За първоначалния проблем, с който трябваше да се справим, мисля, че би било необходимо да се използват корелирани подизбори, които вероятно няма да бъдат ефективни.