[英]inner join gives back multiple values
I have products, All of these products have for example. 我有产品,所有这些产品都有例如。 An id, name and price.
身份证,姓名和价格。 All of these products are connected in the database like this:
所有这些产品都连接在数据库中,如下所示:
Since I don't have 10 reputation... Here is a link to a picture http://puu.sh/oS95c/b7b5b17427.png 由于我没有10个声誉...这里是一张图片的链接http://puu.sh/oS95c/b7b5b17427.png
What I want to achieve is to have products that are connected to another product show up on the screen using inner join. 我想要实现的是使用内部连接将连接到另一个产品的产品显示在屏幕上。 However instead of getting the connected items back I get back every item of the right column even if they are not connected.
然而,我没有获得连接的项目,而是返回右列的每个项目,即使它们没有连接。
Here is a link to get a better view of the database: http://puu.sh/oSBF2/1af1ce3751.png 这是一个获得更好的数据库视图的链接: http : //puu.sh/oSBF2/1af1ce3751.png
$sql = "SELECT AFBEELDING_KLEIN, PRODUCTNAAM, PRIJS
FROM PRODUCT
inner JOIN PRODUCT_GERELATEERD_PRODUCT
ON PRODUCT.PRODUCTNUMMER=PRODUCT_GERELATEERD_PRODUCT.PRODUCTNUMMER_GERELATEERD_PRODUCT";
$result = sqlsrv_query($db, $sql);
$data = sqlsrv_fetch_array($result);
while($data = sqlsrv_fetch_array($result)) {
$big_picture = '<img src="../' . $data["AFBEELDING_KLEIN"] . '"' . 'alt="product">';
$link = '<a href="../productpaginas/' . $data["PRODUCTNAAM"] . '.php"<p> ' . $data["PRODUCTNAAM"] . '</p></a>';
$price = '<h2> €' . $data["PRIJS"] . '</h2>';
echo '<div class="product">';
echo $big_picture;
echo $link;
echo $price;
echo '</div>';
}
Since you immune to questions and don't provide more information, we can only guess. 既然你对问题免疫并且不提供更多信息,我们只能猜测。
You might want am:n link back to the product table itself. 您可能想要:n链接回产品表本身。
SELECT
p1.PRODUCTNUMMER, p2.AFBEELDING_KLEIN, p2.PRODUCTNAAM, p2.PRIJS
FROM
PRODUCT AS p1
INNER JOIN
PRODUCT_GERELATEERD_PRODUCT AS pgp
ON
p1.PRODUCTNUMMER = pgp.PRODUCTNUMMER
INNER JOIN
PRODUCT AS p2
ON
pgp.PRODUCTNUMMER_GERELATEERD_PRODUCT = p2.PRODUCTNUMMER
;
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.