首先,我只想对糟糕的标题表示抱歉。我真的很难用短短的一句话来解释我面临的问题。
我有一个名为 actors 的表,其中包含一个 aID(主键) 和一个 aName 以及更多内容。我还有一个名为 videos 的表,其中包含 vID(主键) 和其他数据。我拥有的第三个也是最后一个表称为connections,其中包含一个主键、一个cVideoID 和一个cActorID。
假设我创建了一个视频,当我导航到该视频时 *www.example.com/video.php?v=primary_key* 我想打印出该电影中的所有 Actor (actor1、actor2 , actor3 和 actor4).因此我创建了 connections 表来跟踪所有电影 Actor 的联系。对于我创作的每一部电影,我都会将 Actor 与电影联系起来。
我认为我可以做这样的事情:
<?php
$result2 = mysql_query("SELECT `actors`.`aID`, `actors`.`aName` FROM `actors` WHERE `connections`.`cVideoID` = {$_get['v']}");
while($actors = mysql_fetch_array($result2))
{
echo "<a href='actor.php?id={$actors['aID']}>{$actors['aName']}</a> ';
}
?>
但是好像不行。有什么想法吗?
最佳答案
您要做的是从 connections
中选择所有条目,其中视频 ID 是所选视频。然后,您在类型转换上加入,以获取有关找到的 Actor 的所有信息。
示例:获取特定视频 ID 的所有 Actor 姓名:
SELECT a.aName
FROM connections c
LEFT JOIN actors a
ON a.aID = c.aID
WHERE c.vID = 1;
关于php - 从存在 id(来自另一个表)的一个表中选择,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19339846/