gpt4 book ai didi

php - 仅限制查询中的连接?

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

好的,所以我想在页面上显示一些产品。但我还需要显示他们的图像。为此,我需要将“produkter”表与“billeder”表连接起来。 - 但是当我运行带有连接的查询来获取图像时,它会显示产品的次数与图像的次数一样多。

这是我所做的加入。

$query = "
SELECT p.p_id
, p.vare_nr
, p.produkt_navn
, p.beskrivelse
, p.forhandler_pris
, p.kunde_pris
, p.kategori
, p.teknisk_info
, p.hmi_link
, p.datablad
, p.public
, b.b_id
, b.navn
FROM produkter p
JOIN billeder b
ON p.p_id = b.p_id
WHERE p.kategori = 'leje'
";

但是正如你在这里看到的 join

该产品现在会显示 5 次,然后才会显示下一个产品。有没有办法限制 JOIN 部分仅抓取在产品数据库中找到的第一个图像?

这是我的 php 代码:

$query = "SELECT produkter.p_id, produkter.vare_nr, produkter.produkt_navn, produkter.beskrivelse, produkter.forhandler_pris, produkter.kunde_pris, produkter.kategori, produkter.teknisk_info,         produkter.hmi_link, produkter.datablad, produkter.public, billeder.b_id, billeder.p_id, billeder.navn
FROM produkter
INNER JOIN billeder
ON produkter.p_id=billeder.p_id
WHERE produkter.kategori='leje'";
if($result = $db->query($query)) {
$num_rows = $result->num_rows;
if($num_rows == 0) {
echo "Der er endnu ikke nogle produkter.";
} else {
while($row = mysqli_fetch_array($result))
{
echo "


<div class='cat_travel col-xs-12 col-sm-6 col-md-4 col-lg-4'>
<div class='portfolio_item'> <a href='lejer.php?page=".$row['p_id']."' data-path-hover='M 180,190 0,158 0,0 180,0 z'>

<figure style='background-image:url(../images/p-img/".$row['navn'].")'>


<svg viewBox='0 0 180 320' preserveAspectRatio='none'>
<path d='M 180,0 0,0 0,0 180,0 z'/>
</svg>
<figcaption>
<p>Description of the project dapibus, tellus ac cursus commodo, mauesris condime ntum nibh, ut fermentum....</p>
<div class='view_button'>View</div>
</figcaption>
</figure>
</a>
<div class='portfolio_description'>
<h3><a href='lejer.php?page=".$row['p_id']."'>".$row['produkt_navn']."</a></h3>
</div>
</div>
</div>


";
}
}
mysqli_free_result($result);
}

最佳答案

您需要一个 GROUP BY 子句。您可能希望对 produkter.p_id 进行分组,并使用聚合函数 MIN()

query = "
SELECT p.p_id
, p.vare_nr
, p.produkt_navn
, p.beskrivelse
, p.forhandler_pris
, p.kunde_pris
, p.kategori
, p.teknisk_info
, p.hmi_link
, p.datablad
, p.public
, MIN(b.b_id)
, b.navn
FROM produkter p
JOIN billeder b
ON p.p_id = b.p_id
WHERE p.kategori = 'leje'
GROUP BY p.p_id
";

关于php - 仅限制查询中的连接?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30217470/

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