Left Join / Right Join Hilfe.
lima-city → Forum → Programmiersprachen → PHP, MySQL & .htaccess
abfrage
auslese
bekommen
code
dank
date
datum
entwickeln
folgende abfrage
gestalten
guter tipp
http
machen
message
ordern
post
stehen
tabelle
url
-
Moin,
ich habe folgende Abfrage meiner DB:
$stmt = 'SELECT id, subject, message, author_id, date FROM news WHERE id = :id ORDER BY date DESC'; $sth = $db->prepare($sql); $sth->bindParam(':id', $id), PDO::PARAM_INT); $sth->execute(); $data = $sth->fetchAll(PDO::FETCH_OBJ);
Jetzt will ich gerne auch noch in dieser Abfrage, aus der author_id auch den Namen raus bekommen.
Diese Daten stehen in der User Tabelle:
--------------
ID|Name|
--------------
Hab egehört ich kann die jetzt mit einem Join auslesen und muss nicht gleich wieder eine neue abfrage Gestalten, wie kann ich das umsetzten? -
Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!
lima-city: Gratis werbefreier Webspace für deine eigene Homepage
-
Der große Google sagt, join funktioniert so: http://dev.mysql.com/doc/refman/5.1/de/join.html und so: http://www.tizag.com/mysqlTutorial/mysqlleftjoin.php und so: http://www.tu-chemnitz.de/docs/mysql/mysql-118.html.
Da ich jetzt schon zum großen Google gelaufen bin, musst du den nötigen Quelltext selbst entwickeln, weil ich dafür zu faul bin.
€dit: Oder aber nikic macht das, dann hast du es ganz einfach
Beitrag zuletzt geändert: 15.1.2010 20:25:09 von alphara -
$stmt = 'SELECT n.id, n.subject, n.message, n.author_id, u.Name n.date FROM news n LEFT OUTER JOIN user u ON n.author_id = u.ID WHERE id = :id ORDER BY date DESC'; $sth = $db->prepare($sql); $sth->bindParam(':id', $id), PDO::PARAM_INT); $sth->execute(); $data = $sth->fetchAll(PDO::FETCH_OBJ);
LEFT OUTER JOIN, damit, falls ein User gelöscht wird, seine Post immer noch angezeigt werden. -
Danke.
Hatte es selber auch so, wollte nur nochmal die bestätigung.
Außer das mit dem Outer.
Das ist ein wirklich sehr guter Tipp, Danke! -
Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!
lima-city: Gratis werbefreier Webspace für deine eigene Homepage