PHP 连接查询返回不需要的结果

标签 php mysql join

我的查询是这样的,php 是:

Select * 
from games 
left join players on games.id = players.id

echo "game:" .  $player . ",pass" . $pass...

我知道它不正确 php echo 只是更快的写入

输出:

game:ost1232,pass:10,desc:Difficulty:Highest,players:Duiski,lad:0region:3;game:ost1232,pass:10,desc:Difficulty:Highest,players:testarn,lad:0,region:3;

但我想要

game:ost1232,pass:10,desc:Difficulty:Highest,players:Duiski.testarn,lad:0,region:3;

代码输出两个游戏结果,但只想在查询中输入玩家,中间用点表示。

  • 游戏表:id、游戏、密码、描述、天梯、地区。
  • 玩家:id、玩家

我想查看加入游戏的玩家

最佳答案

我猜如果用户玩更多游戏,你应该有一个中间表,所以我会有这些表:

games
id
name

players
id
name

player_games
game_id
user_id

我会像这样获取用户“John”的游戏:

select 
players.name as player_name,
games.name as game_name
from games 
join player_games on player_games.game_id
join players on player_games.user_id = players.id
where players.name='John'

可选:在player_games上添加唯一键约束

关于PHP 连接查询返回不需要的结果,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32721290/

相关文章:

php - 用文本重写 URL

mysql - SQL语法问题

sql - 从自然连接中排除列

如果记录的 id 和用户名没有出现在第二个表中,MySQL 会从一个表中选择记录

php - posix_kill 与 pcntl_signal

Windows 中的 PHP Mysql 与 Mysqli

mysql - 通过 sequelize.query() 插入原始查询时不会触发 Hook

mysql - SQL 连接 - 为什么这个简单的连接有效,尽管语法毫无意义?

php - 哈希函数在ColdFusion 10+和PHP 7.x上的功能相同吗?

c# - MySqlClient 结束流异常 : Fatal error when attempting to read past the end of the stream