根据来自其他两个SQL的数据从表中选择数据

时间:2017-12-20 19:20:20

标签: php mysql sql

我有3个桌子:用户,游戏和玩家。为简单起见,我会说表格如下:

用户

id int AUTO_INCREMENT,
PRIMARY KEY (id)

游戏

id int AUTO_INCREMENT,
PRIMARY KEY (id)

玩家

game_id int,
user_id int,
FOREIGN KEY (game_id) REFERENCES (games.id),
FOREIGN KEY (user_id) REFERENCES (users.id)

我需要选择users.id players.game_id为1

SELECT users.id FROM users, game_users WHERE players.id = 1

到目前为止我已经尝试了

SELECT

以及INNER JOINlibrary(ggplot2) set.seed(123) dt <- data.frame(SurveyDate = sample(1:500, 1000, replace = TRUE)) p <- ggplot(dt, aes(SurveyDate)) + stat_bin(bins = 50) + ylab('Survey Responses') dat <- layer_data(p) p + stat_smooth(data = dat, aes(x, y)) 语句,但无济于事。

2 个答案:

答案 0 :(得分:1)

如果仅需要user_id,则不需要JOIN

SELECT user_id 
FROM players
WHERE game_id =1

现在,如果您需要名称,则JOIN将起作用

SELECT users.name
FROM players
JOIN users
  ON player.user_id = users.id
WHERE game_id =1

答案 1 :(得分:0)

您必须拥有加入密钥才能加入用户和游戏。如

...WHERE game_users.id = 1 AND users.id=game_users.id
  

你没有一个名为game_users的表