我已连接,我创建了一个快速脚本,我想在其中管理客户端、域和注释。
问题是,当我从 ID:1 向客户端添加 2 条注释时 - 查看后我只看到一条。
下面的代码显示了我到目前为止所做的事情
SQL 查询:
$sql = "SELECT * FROM domain JOIN note ON domain.id = note.domain_id GROUP BY domain.id";
我的 PHP 代码:
while($rs = $resultdb->fetch_array(MYSQLI_ASSOC)) {
echo '<tr>';
echo '<td>'.$rs["id"].'</td>';
echo '<td><strong><a href="'.$rs["domain_name"].'" target="_blank">'.$rs["domain_name"].'</a></strong></td>';
echo '<td>'.$rs["note"].'</td>';
echo '</tr>';
}
他得到的结果是:
ID DOMAIN NOTE
1 "domain1.com" "note 1 to domain1.com"
2 "domain2.com" "note 2 to domain2.com"
但是,在数据库中,我为domain1.com 添加了一些注释。
我想查看添加到给定域的所有注释。
编辑:
当我这样做时:“SELECT * FROM domain JOIN note ON domain.id = note.domain_id”;
我得到:
编辑:添加屏幕截图
最佳答案
您的 GROUP BY 限制了查询检索的记录。如果您想将所有笔记放在一起,可以尝试使用 GROUP_CONCAT()
生成一个包含所有注释的单个字段...
$sql = "SELECT domain.id as id, domain.domain_name as domain_name,
GROUP_CONCAT(note.note) as note
FROM domain
LEFT JOIN note ON domain.id = note.domain_id
GROUP BY domain.id";
如果没有特定域的注释,您还可以将 JOIN 更改为 LEFT JOIN。
关于php - 仅显示数据库中的最后一条记录,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56047025/