我试图使用一个查询的结果作为另一个查询的输入,但我很难过.我想过使用JOIN,但我认为在这种情况下,我需要分别运行两个查询.基本上我在我的数据库中有一个文章列表.当我遍历从第一个查询中获得的列表或文章时,我想搜索第二个表以找出每篇文章的投票数.
这是代码:
<?php
$sql=mysql_query("SELECT * FROM discussion_links WHERE link_side = 'Michigan'");
while($row = mysql_fetch_array($sql)) {
?>
<div class="top-links-wrapper">
<div>
<div class="link-info">
<a class="link-title" href="http://<?php echo $row['link_url'] ?>">
<?php echo $row['link_title'] . "</a>"; ?>
<p class="link-source"><?php echo $row['link_source'] . "</p>" ?>
</div>
<div class="link-vote-wrapper">
<span class="link-votes">
<?php
$sql2=mysql_query("SELECT * FROM link_votes WHERE link_id = " . $row['link_id'] .")";
$num_rows = mysql_num_rows($sql2);
echo "$num_rows";
?>
</span>
</div>
</div>
</div>
Run Code Online (Sandbox Code Playgroud)
谢谢
您可以加入两个查询试试这个
SELECT dl.* , lv.*
FROM discussion_links dl
LEFT JOIN link_votes lv ON lv.link_id = dl.link_id
WHERE link_side = 'Michigan'
Run Code Online (Sandbox Code Playgroud)