Hi, ich habe gerade mit JOINS in SQL angefangen, um normalisierte Datenbanktabellen in einem Query abzurufen.
Ich habe jetzt eine Frage:
Ist es Performance-technisch schlecht, wenn ich in einer SQL-Abfrage irgendwie 10-12 JOINs habe? Weil so viele "Untertabellen" habe ich, wenn ich die Tabelle normalisiere. Also so was:
Tabelle:
research
researchNames
researchCosts
....
Da muss man halt ganz of "JOIN ... ON ... JOIN ... ON ..." machen. Dauert das lange? Z.B. auch, wenn man ganz viele Zeilen auslesen möchte, wenn nicht sogar alle.?
Ich kann es nicht testen, weil ich es momentan nur in der Theorie geplant habe^^. Und bevor ich stundenlang das mühselig erstelle und dann ist es viel zu langsam, frage ich hier mal nach.
Ich habe im Internet gelesen, dass manche irgendwie 5 JOINS in einem Query haben, und dann 100 000 Zeilen auslesen. Und das dauert 5 Minuten. Das ist ganz schön lang.
Gut, ich glaube ich werde bei meinen Dingen nicht 100 000 Zeilen haben. Wenns hoch kommt werdens hundert, und nur bei manchen Tabellen ganz eventuell auch im 4-stelligen Bereich, wobei diese Tabellen dann nicht unbedingt zusammen in einem Query abgerufen werden müssen.
Ich habe außerdem von Indexing gelesen, konnte aber noch nicht so recht verstehen, was genau das ist.
Was meint ihr? Habt ihr damit schon Erfahrung gemacht? Ich würde mich echt über jede Hilfe freuen
Viele Grüße,
d3mueller
Ich habe jetzt eine Frage:
Ist es Performance-technisch schlecht, wenn ich in einer SQL-Abfrage irgendwie 10-12 JOINs habe? Weil so viele "Untertabellen" habe ich, wenn ich die Tabelle normalisiere. Also so was:
Tabelle:
research
researchNames
researchCosts
....
Da muss man halt ganz of "JOIN ... ON ... JOIN ... ON ..." machen. Dauert das lange? Z.B. auch, wenn man ganz viele Zeilen auslesen möchte, wenn nicht sogar alle.?
Ich kann es nicht testen, weil ich es momentan nur in der Theorie geplant habe^^. Und bevor ich stundenlang das mühselig erstelle und dann ist es viel zu langsam, frage ich hier mal nach.
Ich habe im Internet gelesen, dass manche irgendwie 5 JOINS in einem Query haben, und dann 100 000 Zeilen auslesen. Und das dauert 5 Minuten. Das ist ganz schön lang.
Gut, ich glaube ich werde bei meinen Dingen nicht 100 000 Zeilen haben. Wenns hoch kommt werdens hundert, und nur bei manchen Tabellen ganz eventuell auch im 4-stelligen Bereich, wobei diese Tabellen dann nicht unbedingt zusammen in einem Query abgerufen werden müssen.
Ich habe außerdem von Indexing gelesen, konnte aber noch nicht so recht verstehen, was genau das ist.
Was meint ihr? Habt ihr damit schon Erfahrung gemacht? Ich würde mich echt über jede Hilfe freuen

Viele Grüße,
d3mueller