2017-08-25 35 views
-2

我有两个表:PHP MySQL的SELECT从其他表

players 
bans 

而且我有mysql查询:

$stmt = $this->db->prepare("SELECT ban_Type, ban_Reason FROM bans WHERE ban_Name = ? LIMIT 1"); 
$stmt->execute(array($_SESSION['admin_session'])); 

我想从另一个表中获取ID行..

$stmt = $this->db->prepare("SELECT ID FROM players WHERE Name = ? LIMIT 1"); 
$stmt->execute(array($_SESSION['admin_session'])); 

是否可以合并这两个查询?在此先感谢

+1

你应该看看MySQL的'JOIN'语法:https://dev.mysql.com /doc/refman/5.7/en/join.html – jeroen

+2

很高兴看到您尝试过的是什么,这会向我们展示您在发布问题之前对此进行了研究。当你尝试时,你也会学习。如果有人只是给你一个答案/解决方案,那就没有用,我说这是为了你的未来。发布一些可能失败的内容,甚至会显示你的努力,我们总是很乐意提供帮助:-) –

+1

@jeroen * Yep!* ;-) –

回答

1

这是一个有点硬不知道你的数据库结构做,但基本上这应该工作:

SELECT b.ban_Type 
    , b.ban_Reason 
    , p.Name 
FROM bans b 
    JOIN players p ON p.ID = b.players_ID 
WHERE ban_Name = ? 
LIMIT 1