Wahrscheinlich nur eine einfache Abfrage

ncpschmidt

Benutzer
Beiträge
12
Hey, ich benötige Hilfe bei einer Abfrage.

Ich habe folgende Tabellen mit den für die Abfrage relevanten Daten:

cars
id
foto

battle
id
winnerID
loserID

Nun möchte ich mir die letzten 3 Battles eines Fahrzeuges und jeweils das Foto vom "Gegner" anzeigen lassen. Meine bisherige Abfrage sieht folgendermaßen aus:

SELECT b.winnerID, b.loserID, c.foto
FROM battles b
JOIN cars c
ON (c.id = b.winnerID) OR (c.id = b.loserID)
WHERE c.id = 34
ORDER BY b.id DESC
LIMIT 3

Diese Abfrage gibt mir zwar die letzten 3 Battles des Fahrzeugs mit der id=34 aus, jedoch auch nur das Bild vom 34er Fahrzeug. Ich möchte, dass das Foto vom Gegner angezeigt wird, unabhängig vom Ergebnis des Battles.

Mittels PHP würde ich es mir dann ganz grob so anzeigen lassen:

$battle = mysqli_fetch_assoc(mysqli_query......);
if ($row["id"] == $battle["winnerID"]) {
echo "gegen";
echo "<a href='#' style='background: url(" . $bttl["foto-loss"] . ")'></a>";
echo "gewonnen";
}
else {
echo "gegen";
echo "<a href='#' style='background: url(" . $bttl["foto-win"] . ")'></a>";
echo "verloren";
}

Habt ihr zu den Festtagen eine Lösung für mich? Ich wäre euch unendlich dankbar! :)
LG und ein frohes Fest! :)
 
Werbung:
Code:
select b.winner_id as winner, b.loser_id as loser, w.foto as picture_winner, l.foto as picture_loser from battle b left join cars w on b.winner_id=w.id left join cars l on b.loser_id=l.id

Das Limit überlasse ich Dir zur Übung.
 
Code:
select b.winner_id as winner, b.loser_id as loser, w.foto as picture_winner, l.foto as picture_loser from battle b left join cars w on b.winner_id=w.id left join cars l on b.loser_id=l.id

Das Limit überlasse ich Dir zur Übung.

Vielen Dank! Das Limit konnte ich gerade noch umsetzen :D Mir fehlt jetzt allerdings noch die korrekte WHERE Bedingung, in der ich auf die ID=34 verweise bzw. in der Abfrage durch $id=$_GET["id"] ersetze, damit ich auf jeder Carpage die letzten 3 Battles des entsprechenden Fahrzeuges einsehen kann.

Ich kaufe mir von meinem Weihnachtsgeld ein SQL Handbuch, versprochen :) :D
 
Werbung:
Zurück
Oben