【发布时间】:2021-05-05 03:13:51
【问题描述】:
这是我的original post 的后续问题。
我有我想要的结果,但想知道是否有办法让结果第一列中的 player_id 始终相同?我创建了一个sqlfiddle 来说明我的意思。在 sqlfiddle 结果中,我希望玩家 10 始终排在第一位,因此以下统计信息与玩家 10 相关,如果这有意义的话。现在看来,第一列取决于表中的条目顺序。 select语句如下:
SELECT
t1.player_id,t1.sb_stats_id,t1.sb_stats_AB,t1.sb_stats_runs,
t1.sb_stats_hits,t1.sb_stats_HR,t1.sb_stats_team,
t2.player_id,t2.sb_stats_team,t2.sb_stats_id
FROM softball_stats t1 INNER JOIN softball_stats t2
ON t1.game_id=t2.game_id AND t1.sb_stats_team=t2.sb_stats_team
AND t1.sb_stats_id < t2.sb_stats_id
WHERE t1.player_id IN (10,11) AND t2.player_id IN (10,11);
我在最后尝试了各种 group by,order by 语句,但我没有任何运气。
【问题讨论】:
-
你可以使用“ORDER BY t1.player_id asc”
-
那行不通。玩家 11 出现在 t1 中。我只希望玩家 10 的数据显示在 t1 中。或者换句话说,我希望能够始终将数组中的第一个(或最后一个)玩家分配给特定的表(在本例中为 t1)
标签: mysql