gpt4 book ai didi

php - 如何在php中从mysql每个表的特定行检索数据?

转载 作者:行者123 更新时间:2023-11-29 18:27:51 26 4
gpt4 key购买 nike

我有三个表:h_basic、h_amenities 和 h_images,它们具有公共(public)列 u_name。有两个名为product-list 和product-review 的php 页面。当我在产品列表页面上单击该产品的按钮时,我想在产品评论页面上获取该产品的详细信息。

我有从单个表中检索单行的代码,但我想检索所有三个表的特定行,并且我还想将 u_name 作为主要而不是 id,因为 id 在所有表中都不同。

<?php
$id = isset($_REQUEST['id']) ? $_REQUEST['id'] : "0";
$sql = ("SELECT h_basic.*, h_images.* FROM h_basic JOIN h_images WHERE h_basic.id = h_images.id");
$result = mysql_query("$sql");
while ($row = mysql_fetch_array($result)) {
echo $row['h_name']; echo $row['h_state'];
?>
<img src="images/<?php echo $row['h_image01'];?>"><img src="images/<?php echo $row['h_image02'];?>"><img src="images/<?php echo $row['h_image03'];?>"><img src="images/<?php echo $row['h_image04'];?>">
<?php }?>

表 1:

enter image description here

表 2:

enter image description here

最佳答案

只需使用任何匹配的字段作为 JOINON 条件

SELECT B.*, I.*, A.*
FROM h_basic B
LEFT JOIN h_images I ON B.u_name = I.u_name
LEFT JOIN h_amenities A IN B.u_name = A.u_name

您需要添加一个 WHERE 子句来获取特定名称

请注意,如果每个表上都有用于连接字段的索引,速度会更快

关于php - 如何在php中从mysql每个表的特定行检索数据?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46005193/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com