我有一个页面想要使用 3 次 INNER JOIN,因为 log_items 有一行名为“price”。当我使用 log_mobs 和 log_mitem 进行 INNER join 时,一切都会正常,他从 $_GET['id'] 与 ['g'] 组合中获取所有信息,但是当我使用 log_items
加入时,他显示了来自的所有行表“log_items”
我想在页面上显示 MOB 旁边我想显示价格的商品。 但他显示了“log_items”中的所有信息我需要显示“log_mitem”中的项目,但我需要从“log_items”中获取这些价格
if (isset($_GET['id']) && isset($_GET['g']))
{
$id = $db->real_escape_string(trim($_GET['id']));
$g = $db->real_escape_string(trim($_GET['g']));
$mobitem = $db->query("SELECT * FROM log_mobs INNER JOIN log_mitem INNER JOIN log_items ON log_mobs.name = log_mitem.mobname AND log_mobs.game = log_mitem.game WHERE log_mobs.name = '".$id."' AND log_mitem.game = '".$g."'") or die($db->error);
?>
最佳答案
我认为你的 SQL 请求应该是这样的:
select * from log_mobs
inner join log_mitem on log_mobs.name = log_mitem.mobname
inner join log_items on log_items.column = theOtherSideOfTheJointure.column
关于php - 三次 INNER JOIN SELECT,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27045895/