Komplexe dynamische Suche über mehrere Tabellen - Best Practice
Servus zusammen,
mein erster Post hier und gleich mal ein schön kompliziertes Thema ;)
Also ich möchte eine komplexe Suche programmieren und mir fehlt da aber irgendwie gerade noch ein schöne Idee, bzw. ein Best Practice.
Es geht um folgendes:
Ich habe z.B. eine Datenbank mit Kunden, Büchern, Bücherkategorien, Autoren und Zahlungen.
Nun brauche ich eine schlaue Suche, die über alle Tabellen gehen kann. Damit es userfreundlich ist, stelle ich mir eine dynamische Suchmaske vor, so dass man z.B. Suchkriterium nach Suchkriterium einzeln hinzufügen kann und nicht gleich mit einer riesen Maske erschlagen wird, wobei das ja eher Frontend-Zeug ist. Nur um zu verdeutlichen was so rauskommen soll.
Also es geht dann um Suchanfragen wie:
1) Zeige alle Personen mit Nachname Mustermann, die schon mal ein Buch gekauft haben
2) Zeige alle Personen, die Bücher aus Kategorie X gekauft haben
3) Zeige alle Bücher, die noch nie gekauft wurden
4) Zeige alle Kategorien, die mindestens 10 Bücher haben
5) Zeige alle Personen, die Bücher im Wert von X aus der Kategorie Y gekauft haben
6) Zeige alle Personen, die Bücher im Gesamtwert von X bis Y im Zeitraum von Datum A bis B gekauft haben
usw. usw.
Also eine beliebig kombinierbare und erweiterbare komplexe Suche mit Joins, Sums, Dateranges etc. bla bla.
Ich weiß wie ich das alle mühsam per Hand programmieren kann, aber bevor ich mir das antue, wollte ich lieber mal nachfragen ob's dafür nicht bestimmte hilfreiche Patterns und Lösungen gibt.
Bin über jeden Tipp dankbar! :)
|