我想添加另一个要在mysql中显示的字段

时间:2016-02-22 21:39:48

标签: mysql database

按下回车后,我希望显示位置以及玩家名称。我觉得我很亲密,但不是点击。

Select
    Players.fname AS first_name,
    Players.lname AS last_name,
    Players.Player_id
    positions.positions_id
From
    Players, positions
JOIN player_position
ON Players.Player_id=player_position.Player_id
JOIN positions ON player_position.positions_id=positions.positions_id
WHERE player_position.WAR> 5
GROUP BY last_name
\G`

1 个答案:

答案 0 :(得分:0)

不幸的是,你并非如此"关闭"做对了有很多要点需要解决。我们试一试:

SELECT
  pl.fname AS first_name,
  pl.lname AS last_name,
  pl.Player_id,
  po.positions_id
FROM Players pl 
INNER JOIN player_position pp
ON pp.position_id=pl.Player_id
INNER JOIN positions po
ON po.positions_id=pp.positions_id
WHERE pp.WAR> 5
ORDER BY last_name

我真的不太了解您的数据及其内部结构我只能猜测,所以很可能这不是您想要的,但至少它应该是有效的SQL,也许是一个起点。

我将GROUP BY替换为ORDER BY,假设您实际上想要分别看到每个玩家,并且并非所有具有相同姓氏的玩家都聚集在一起。您的列列表也不会被GROUP BY子句接受。

我不清楚的另一点是你明显的两个定位表player_positionpositions的目的。他们都加入了个人玩家ID。真的有两张桌子,或者你想在那里做些不同的事情吗?