SELFPHP: Version 5.8.2 Befehlsreferenz - Tutorial – Kochbuch – Forum für PHP Einsteiger und professionelle Entwickler

SELFPHP


Professional CronJob-Service

Suche



CronJob-Service    
bei SELFPHP mit ...



 + minütlichen Aufrufen
 + eigenem Crontab Eintrag
 + unbegrenzten CronJobs
 + Statistiken
 + Beispielaufrufen
 + Control-Bereich

Führen Sie mit den CronJobs von SELFPHP zeitgesteuert Programme auf Ihrem Server aus. Weitere Infos



:: Buchempfehlung ::

Webseiten professionell erstellen

Webseiten professionell erstellen zur Buchempfehlung
 

:: Anbieterverzeichnis ::

Globale Branchen

Informieren Sie sich über ausgewählte Unternehmen im Anbieterverzeichnis von SELFPHP  

 

:: Newsletter ::

Abonnieren Sie hier den kostenlosen SELFPHP Newsletter!

Vorname: 
Name:
E-Mail:
 
 

Zurück   PHP Forum > SELFPHP > MySQLi/PDO/(MySQL)
Hilfe Community Kalender Heutige Beiträge Suchen

MySQLi/PDO/(MySQL) Anfänger, Fortgeschrittene oder Experten können hier Fragen und Probleme rund um MySQLi/PDO/(MySQL) diskutieren

Antwort
 
Themen-Optionen Ansicht
  #1  
Alt 16.02.2006, 22:30:11
temardo temardo ist offline
Anfänger
 
Registriert seit: Feb 2006
Beiträge: 1
mysql Abfrage

Hallo erstmal.

Mal sehen, ob ich mein Problem in Worte fassen kann.
Ich habe ein Forum wo bei der Threadanzeige halt alle Posts ausgelesen werden.
Nun möchte ich einige Zusatzinfos zum jeweiligen Poster anzeigen lassen und diese idealerweise in den bestehenden Query integrieren.
Das Problem läßt sich so komprimieren:
Ich habe drei Tabellen der folgenden Form

1usertabelle
userid|username
1|ich
2|du
3|er
...

1posts
postid | erstellerid
1|1
2|2
3|1
4|3
5|2
6|1
...

1galerie
eintragid|erstelleid|gruppe|nr
1|1|eins|1
2|2|eins|2
3|2|zwei|1
4|3|zwei|2
5|4|eins|3
6|2|eins|4
....

Die standardabfrage für die Postanzeige sieht dann in etwa so aus:
SELECT posts.postid, users.userid
FROM 1posts AS posts
LEFT JOIN 1usertabelle AS users ON posts.erstellerid = users.userid
WHERE posts.erstellerid = users.userid
ORDER BY posts.postid

Ergebnis:
postid | userid
1|1
2|2
3|1
4|3
5|2
6|1

Nun soll es so aussehen, d.h. alle Galerieeinträge des jeweiligen Posters sollen angeeigt werden:
postid | userid |galerieeinträge
1|1|eins1
2|2|eins2,zwei1,eins4
3|1|eins1
4|3|zwei2
5|2|eins2,zwei1,eins4
6|1|eins1

Wenn ich einen zusätzlichen LEFT JOIN erstelle, klappt das, solange der User nur einen Galerieeintrag hat. Hat er mehrere, wird bei der Ausgabe der Post jeweils wiederholt, was ja doof aussieht ;)
(SELECT posts.postid, users.userid, galerie . *
FROM 1posts AS posts
LEFT JOIN 1usertabelle AS users ON posts.erstellerid = users.userid
LEFT JOIN 1galerie AS galerie ON posts.erstellerid = galerie.erstellerid
WHERE posts.erstellerid = users.userid
ORDER BY posts.postid)


Wenn ich nun so GROUPiere , werden alle wiederholten Antworten eines Users nicht mehr angezeigt (außerdem wird dann nur ein, zufälliger, Galeriebeitrag erfasst):
SELECT posts.postid, users.userid, galerie . *
FROM 1posts AS posts
LEFT JOIN 1usertabelle AS users ON posts.erstellerid = users.userid
LEFT JOIN 1galerie AS galerie ON posts.erstellerid = galerie.erstellerid
WHERE posts.erstellerid = users.userid
GROUP BY galerie.erstellerid
ORDER BY posts.postid


Hat einer eine Idee, wie man das mit einem Query bewerkstelligen kann?
Ich beherrsche einfaches MySQL (bis hin zu JOINS) ganz gut, aber jetzt habe ich keinen blassen Schimmer.

Geändert von temardo (16.02.2006 um 22:30:45 Uhr)
Mit Zitat antworten
  #2  
Alt 17.02.2006, 08:13:38
Benutzerbild von xabbuh
xabbuh xabbuh ist offline
SELFPHP Guru
 
Registriert seit: May 2003
Beiträge: 7.187
AW: mysql Abfrage (group aber nicht alles ^^)

Um alle Einträge des Benutzer in einer Zeile anzuzeigen, müsstest du die Abfrage, wie du sie schon hast, verwenden und dann in deinem PHP-Script ein Array erstellen, in dem die Beiträge entsprechend den Benutzern zugeordnet werden. So kannst du dann hinter jedem Benutzernamen alle Beiträge des entsprechenden Benutzers anzeigen.
Mit Zitat antworten
Antwort


Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)
 

Forumregeln
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind aus.
[IMG] Code ist aus.
HTML-Code ist aus.

Gehe zu

Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
MySQL Abfrage mit COUNT MaXiM MySQLi/PDO/(MySQL) 1 03.04.2005 16:47:13
Problem bei MYSQL Abfrage DiJae PHP für Fortgeschrittene und Experten 1 30.01.2003 08:27:08
mysql abfrage mit kathegorieen? Silencer PHP für Fortgeschrittene und Experten 1 30.10.2002 20:19:27
mySQL Abfrage mit NULL Einträgen HeikoH PHP für Fortgeschrittene und Experten 2 29.10.2002 01:41:19
MySQL Abfrage der letzten 6 Monate Andy PHP für Fortgeschrittene und Experten 3 18.02.2002 23:05:46


Alle Zeitangaben in WEZ +2. Es ist jetzt 17:20:48 Uhr.


Powered by vBulletin® Version 3.8.3 (Deutsch)
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.


© 2001-2024 E-Mail SELFPHP OHG, info@selfphp.deImpressumKontakt