Hallo Mister 47
Ganz herzlichen Dank für Deine ausführliche Antwort! So klappt es schon mal ganz wunderbar.
- Die Abfrage ist nicht effizient, d. h. MySQL kann keine Indizes zur Optimierung verwenden. Für die Sortierung muss ein File-Sort angewendet werden. Dies ist jedoch für kleinere Datenmengen unproblematisch. Bei größeren Datenmengen solltest du überlegen, ob du Personen und Unternehmen in einer einzigen Tabelle speicherst. Dies führt zwar dazu, dass bei Personendatensätzen das Firmen-Feld ungenutzt bleibt, allerdings lassen sich auf diese Weise Abfragen wesentlich angenehmer schreiben und effizienter ausführen. Falls dies nicht in Frage kommt
Hm... nein, das kommt (leider) nicht in Frage.
, gäbe es noch folgende Möglichkeit:
Erweitere die Tabelle t_0000user um alle Felder, die sowohl in der Personen- als auch in Unternehmenstabelle stehen (also Name und Vorname, nicht jedoch Firma). Entferne anschließend die Felder Name und Vorname aus der Personen- bzw. Unternehmenstabelle.
Ja, das wäre wohl die beste Alternative. Da dies einen ziemlich grossen Umbau des Frontends zur Folge hätte und ich diese übergreifende Benutzer-Tabelle nur im Backend benötige, werde ich es einfach mal mit der bestehenden Datenstruktur und Deiner Abfrage versuchen. Aber es ist gut zu wissen, dass ich diese Optimierungsmöglichkeit noch hätte.
Nochmal sehr herzlichen Dank für Deine Hilfe!
Andrea