我正在使用我的数据库中的 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 列)。
它与 ROW_NUMBER() + 4x AS 有关吗?