0

我正在使用我的数据库中的 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 有关吗?

4

0 回答 0