Ich habe vier Tabellen: Abteilung (ID, Name), Kurs (ID, Name), Mitarbeiter (ID, Name, Abteilung_ID) und Staff_to_Course (Staff_ID, Kurs_ID). Ich muss zeigen, wie viele Menschen aus jeder Abteilung (und nicht) abgeschlossen jeden Kurs sowie einen Durchschnitt für jede Abteilung und eine für jeden Kurs:OOP-Darstellung von Daten aus einer JOIN-Abfrage
| Course 1 | Course 2 | Average |
----------------------------------------
Dept 1 | 20% | 30% | 25% |
----------------------------------------
Dept 2 | 10% | 40% | 25% |
----------------------------------------
All | 18% | 33% | 25% |
----------------------------------------
ich die SQL-Abfrage beitreten tun können, aber ich Ich bin verwirrt darüber, wie man Objekte richtig verwendet, um die Daten intern darzustellen.
Ich habe derzeit Kurse und Abteilung Objekte, aber schreiben Methoden wie $course->percentComplete($dept_id)
fühlt sich irgendwie falsch an und $course->percentComplete('all')
fühlt sich noch mehr falsch. Die Kursdurchschnittszahl ist keine sinnvolle Eigenschaft eines Kursinstanzobjekts, aber das Ablegen auf das Abteilungsobjekt würde bedeuten, den Code über zwei Klassen hinweg zu duplizieren, was definitiv falsch ist.
Ich erwarte, dass es ein grundlegendes OO-Prinzip gibt, das ich hier verletze, aber ich kann nicht sehen, was es ist.
Danke Fabrizio, aber es scheint mir statische Methoden auf diese Weise im Wesentlichen aufzugeben OOP und geht zurück zu Funktionen. – Tamlyn