简体   繁体   English

三遍INNER JOIN SELECT

[英]Three times INNER JOIN SELECT

I've a page where I want to use 3 times INNER JOIN, Because log_items have a row called 'price'. 我有一个页面要使用3次INNER JOIN,因为log_items的行名为“ price”。 When I do INNER join with log_mobs & log_mitem everything goes fine, He gets all information from $_GET['id'] combined with ['g'] but when I join with log_items he shows all rows from the table 'log_items' 当我使用log_mobs和log_mitem进行INNER联接时,一切都很好,他从$ _GET ['id']与['g']组合中获取所有信息,但是当我与log_items他显示了表'log_items'中的所有行

I want to show on the page, the items the MOB have next to that I want to show the price. 我想在页面上显示MOB旁边要显示价格的项目。 But he shows all those information from 'log_items' I need to show items from 'log_mitem' but I need to get those prices from 'log_items' 但是他显示了“ 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);
?>

I think your SQL request should look something like this: 我认为您的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

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM