Я использую 3 таблицы из моей базы данных, которые я читаю данные для моей таблицы ранга (top15). Я пытаюсь заполнить один 'tr' только одним запросом (используя несколько псевдонимов), но я застрял здесь:
Моя последняя попытка была:
SELECT DISTINCT(mapname),
(SELECT his_time FROM primekz_records
WHERE primekz_records.id=$player_id AND his_aa = 10 AND tp > 0) AS nub10,
(SELECT his_time FROM primekz_records
WHERE primekz_records.id=$player_id AND his_aa = 10 AND tp = 0) AS pro10
FROM primekz_records
JOIN primekz_players ON primekz_records.id=primekz_players.id
JOIN primekz_maps ON primekz_maps.mid=primekz_records.mid
WHERE primekz_players.id=$player_id
Таблицы структурированы:
primekz_players( id, steamid, name ...)
primekz_maps( mid, mapname )
primekz_records( id, mid, his_time, his_aa, tp, ... ) <-- this means one ID(player) can be max 4 times for one mid (map), variations are: his_aa (10/100), tp (0/more)
Если я пытаюсь использовать только один псевдоним, я получаю этот результат, что совершенно неверно (см. Столбец Noob100).
https://i.snag.gy/tHpUK8.jpg
Это как-то связано с ROW_NUMBER () + 4x AS?