Php 具有多个外键的内部联接表
桌上贴膜 身份证胶卷 名字 导演 明星 年 奥杰纳 复习 表格年份 身份证年 年 表格类型 身份证类型 体裁 表格电影类型 身份证 身份证胶卷 身份证类型 在餐桌上,电影“年”是餐桌年的外键。 在table film_流派中,id_film和id_流派是tables film和流派的外键。因为一部电影可以有多种类型,一种类型可以有多种电影, 我试图从这些表中得到如下输出 姓名: 类型:例如。戏剧、动作、历史 主任: 明星: 年份: 奥杰纳: 审查: 我试过这样做,但它不起作用,因为如果电影有3种类型(例如,戏剧、动作、历史),它不会在一次输出中输出一部电影的所有类型,相反,他会输出同一部电影的3倍,每次输出一种类型。你能帮我吗Php 具有多个外键的内部联接表,php,mysql,pdo,Php,Mysql,Pdo,桌上贴膜 身份证胶卷 名字 导演 明星 年 奥杰纳 复习 表格年份 身份证年 年 表格类型 身份证类型 体裁 表格电影类型 身份证 身份证胶卷 身份证类型 在餐桌上,电影“年”是餐桌年的外键。 在table film_流派中,id_film和id_流派是tables film和流派的外键。因为一部电影可以有多种类型,一种类型可以有多种电影, 我试图从这些表中得到如下输出 姓名: 类型:例如。戏剧、动作、历史 主任: 明星: 年份: 奥杰纳: 审查: 我试过这样做,但它不起作用,因为如果电影有3种
try{
$upit=$veza->prepare("select a.name,d.genre as genre,a.director,a.stars,b.year,a.ocjena,a.review
from film a
inner join year b on a.year=b.id_year
inner join film_genre c on a.id_film=c.id_film
inner join genre d on d.id_genre=c.id_genre");
$upit->execute();
$rezultat=$upit->fetchALL(PDO::FETCH_OBJ);
foreach ($rezultat as $red) {
echo "</br><strong> Name : </strong>" . $red->name;
echo "</br><strong> Genre : </strong>" . $red->genre;
echo "</br><strong> Director : </strong>". $red->director;
echo "</br><strong> Stars : </strong>". $red->stars;
echo "</br><strong> Year : </strong>". $red->year;
echo "</br><strong> Ocjena : </strong>". $red->ocjena;
echo "</br><strong> Review : </strong>". $red->review;
echo "<pre></pre>";
}
} catch(PDOException $e){
}
试试看{
$upit=$veza->prepare(“选择a.name、d.GREEP作为流派、a.director、a.stars、b.year、a.ocjena、a.review
从电影a
a.year=b.id\u年的内部连接年份b
a.id电影上的内部连接电影类型c=c.id电影
d.id_体裁=c.id_体裁上的内部连接体裁d);
$upit->execute();
$rezultat=$upit->fetchALL(PDO::FETCH_OBJ);
foreach($rezultat为$red){
回声“名称:”$red->Name;
回声“流派:”$red->流派;
回声“导演:”$red->Director;
回声“星星:”$red->Stars;
回声“年份:”$red->Year;
回声“Ocjena:”$red->Ocjena;
回声“评论:”$red->评论;
回声“;
}
}捕获(PDO$e){
}
您可以通过a.id\u电影添加一个组,并将流派名称与GROUP\u CONCAT(d.genre)作为流派连接起来