Geordnete Ausgabe für ein Array

ncpschmidt

Benutzer
Beiträge
12
Ich habe 3 folgende Tabellen:

customer
id
name

project
id
name

task
id
name

Ich möchte mit einer Abfrage die Daten so auslesen können, dass ich damit 3 eigenständige <select / option> Auswahlfelder füllen kann (Customer, Project und Task). Ich habe dabei an ein mehrdimensionales Array gedacht mit anschl. Ausgabe über $daten[][], jedoch bekomme ich die Ergebnisse der Abfrage nicht korrekt geordnet.

Momentan bin ich bei

SELECT c.name as customer, p.name as project, t.name as task FROM customer c JOIN project p ON c.id = p.id JOIN task t ON c.id = t.id

Aktuell habe ich den einfachen, unperformanten Weg mit 3 eigenständigen Abfragen (Pro Auswahlfeld eine eigene Abfrage) gewählt. Hilfe! :)
 
Werbung:
Gibt es denn eine logische Verbindung, die man für einen JOIN nutzen kann? Ich denke mal eher für einen Customer kann es N Projekte geben mit jeweils M Aufgaben. Dann bekommst halt rech viele Zeilen, in denen immer derselbe Customer steht. Für ein Auswahlfeld wohl eher ungünstig.
 
Ganz genau! Ich möchte halt ein kleines Formular erstellen, in dem anfangs der Kunde ausgewählt wird, danach das Projekt und im dritten Auswahlfeld die Aufgabe. Wie stricke ich die Abfrage mit meinem Datenbankschema am sinnvollsten? Für die weitere PHP Verarbeitung bin ich hier wohl etwas falsch im Datenbankforum
 
Ich sehe nicht das Problem, da je eine separate Abfrage zu machen. Oder Du machst eine und aggregierst das. Aber das ist dann eher komplizierter.
 
Werbung:
Du kannst alles auf einmal abfragen (ohne die Joins) und dann z.B. per JavaScript nach der Auswahl die weiteren Dropdown Felder anpassen (bereinigen) oder drei Abfragen (wenn du bei solchen einfachen Abfragen Performance Probleme hast, hast du vermutlich andere Probleme) erstellen, gefiltert nach den schon ausgewählten Daten.
 
Zurück
Oben