/ / Duplikuje sa s INNER JOIN aj s DISTINCT - php, mysql, distinct

Duplikovať s INNER JOIN aj s DISTINCT - php, mysql, distinct

Keďže som pridal obrázky z inej tabuľky, dáva mi duplikáty a nemám tušenie, prečo. Už som dal DISTINCT, ale bez výsledku.

Tu vidíte tabuľku "fotos". Výsledky môjho kódu by boli dva krát "Internnummer 1" a trikrát "Internnummer 2".

Internnummer | VolgNR | Fotonaam
1 | 0 | Image_1.jpg
1 | 1 | Image_2.jpg
2 | 0 | Image_3.jpg
2 | 1 | Image_4.jpg
2 | 2 | Image_5.jpg

V kóde som už pracoval, že sa zobrazia len obrázky s "VolgNr" 0. Ale napriek tomu duplikuje ostatné údaje.

Všetko funguje pri každom použití, okrem obrazu samozrejme.

sql = "SELECT DISTINCT * z príležitostí INNER JOIN fotos ON occasions.Internnummer = fotos.Internnummer";

Plný kód:

<?php

$sql = "SELECT DISTINCT * FROM occasions INNER JOIN fotos ON occasions.Internnummer = fotos.Internnummer";
$result = $conn->query($sql);

if ($result->num_rows > 0) {

while($row = $result->fetch_assoc()) {
echo
"<div class="oc-item">" .
// Product image
"<div class="oc-image">" .
"<img src="/images/http://example.com/images/" . ($row["VolgNr"] == 0 ? $row["Fotonaam"] : $row["OmschrijvingNL"]) . ""/>" .
"</div>".
// Product information
"<div class="oc-info"><b>" .
"<a href="occasion?id=".$row["Internnummer"]."" >". $row["OmschrijvingNL"]. "</a>" .
"</b>".
"<p>" . ($row["Prijs"] == 0 ? "Prijs op aanvraag" : $row["Prijs"]) . "</p><br />" .
"<p>" .
$row["Memotekst1NL"]. "</p>" . "<p>" .
$row["Memotekst2NL"]. "</p>" . "<p>" .
$row["Memotekst3NL"]. "</p>" . "<p>" .
$row["Memotekst4NL"]. "</p>" . "<p>" .
$row["Memotekst5NL"]. "</p>" . "<p>" .
"<a href="occasion?id=".$row["Internnummer"]."" >"."Lees meer..."."</a>" .
"</div>" .

"</div>";

}

} else {
echo "Geen resultaten gevonden.";
}
?>

odpovede:

0 pre odpoveď č. 1

Problém bol ľahko vyriešený. Pridal som WHERE a duplikáty sú preč.

SELECT * FROM fotos INNER JOIN occasions ON occasions.Internnummer = fotos.Internnummer WHERE VolgNr = 0