Daten aus 2 mysql-tabellen ausgeben

Fragen zu allen Themen rund ums Programmieren außerhalb von phpBB können hier gestellt werden - auch zu anderen Programmiersprachen oder Software wie Webservern und Editoren.
Antworten
xnay
Mitglied
Beiträge: 91
Registriert: 05.11.2003 18:49
Wohnort: Wien
Kontaktdaten:

Daten aus 2 mysql-tabellen ausgeben

Beitrag von xnay »

Ich hab da ein kleines problem. Ich hab in einer MySQL datenbank 2 tabellen. In einer sind Bandnamen (es geht um Tourdaten) und in der anderen die Termine gespeichert. Das ganze ist über einen fremdschlüssel verbunden (also jeder tourtermin hat die id der dazugehörigen Band in einer spalte gespeichert).
Jetzt möchte ich das ganze aber so ausgeben, dass oben die band steht und darunter die tourdaten. Also so:

Band 1
Daten
Daten
Daten

Band 2
Daten
Daten
Daten

usw.
...

Kann mir jemand sagen wie das geht??
Benutzeravatar
Pyramide
Ehrenadmin
Beiträge: 12734
Registriert: 19.04.2001 02:00
Wohnort: Meschede

Beitrag von Pyramide »

Mach zuerst eine Abfrage nach den Bandnamen und baue dann für jede Band mit Hilfe der erhaltenen Band-ID eine neue Abfrage zum Auslesen der Termine :roll:
xnay
Mitglied
Beiträge: 91
Registriert: 05.11.2003 18:49
Wohnort: Wien
Kontaktdaten:

Beitrag von xnay »

Ja, ich glaub so hab ichs eh schon mal probiert...hat aba irgendwie net so wirklich funktioniert...
Ich werds halt nochmal probieren!
Benutzeravatar
Pyramide
Ehrenadmin
Beiträge: 12734
Registriert: 19.04.2001 02:00
Wohnort: Meschede

Beitrag von Pyramide »

Wenn du das "irgendwie net so wirklich" jetzt noch genauer beschreibst, kann dir vielleicht sogar jemand helfen :roll: .
sierra
Mitglied
Beiträge: 68
Registriert: 02.12.2003 00:50
Wohnort: Garbsen

Beitrag von sierra »

www.php.net

scuche dort mal nach join
xnay
Mitglied
Beiträge: 91
Registriert: 05.11.2003 18:49
Wohnort: Wien
Kontaktdaten:

Beitrag von xnay »

Pyramide hat geschrieben:Mach zuerst eine Abfrage nach den Bandnamen und baue dann für jede Band mit Hilfe der erhaltenen Band-ID eine neue Abfrage zum Auslesen der Termine :roll:
Meinst du für jede band eine neue SELECT Abfrage??
Benutzeravatar
Pyramide
Ehrenadmin
Beiträge: 12734
Registriert: 19.04.2001 02:00
Wohnort: Meschede

Beitrag von Pyramide »

Ja
xnay
Mitglied
Beiträge: 91
Registriert: 05.11.2003 18:49
Wohnort: Wien
Kontaktdaten:

Beitrag von xnay »

Und wären das nicht ein bissl viele abfragen, wegen geschwindigkeit und so, oder is das egal?
Benutzeravatar
Pyramide
Ehrenadmin
Beiträge: 12734
Registriert: 19.04.2001 02:00
Wohnort: Meschede

Beitrag von Pyramide »

Das sollte zumindest bei MySQL kein größeres Problem sein, ausser du hast sehr viele Bands mit kaum (0/1) Terminen. Überigens liest phpBB die Kategorien/Foren auf der Startseite genauso aus

Alternative wäre ein JOIN, nach Bands sortieren und dann in PHP prüfen ob sich der aktuelle Datensatz eine andere Band enthält als der vorige, wenn ja dann band-header schreiben. Aber das sieht im PHP-Code sicher viel unübersichtlicher aus.
Benutzeravatar
King Crusty
Mitglied
Beiträge: 209
Registriert: 20.04.2002 11:58
Wohnort: Deggendorf - Altötting
Kontaktdaten:

Beitrag von King Crusty »

Code: Alles auswählen

SELECT kategorie.typ, hersteller.name, produkte.vk, produkte.artnr, kaufv.datum
FROM kategorie, hersteller, produkte, kaufv, kaufl
WHERE (
produkte.produkt_id = kaufl.produkt_id
) AND (
produkte.kategorie_id = kategorie.kategorie_id
) AND (
produkte.hersteller_id = hersteller.hersteller_id
) AND (
kaufl.kaufl_id = kaufv.kaufv_id
)
LIMIT 0 , 30 
ich hatte mal selbiges Problem und habs über Fremdschlüsselvergleiche gelöst...aber wie gesagt du kannst es auch mit JOIN oder CREATE VIEW machen...
Antworten

Zurück zu „Coding & Technik“