mayooo
Grünschnabel
Hallo liebe Gemeinde!
Ich habe mal wieder ein sehr diffuses Problem.
Vorgeschichte: Spezielle Abfrage zweier Tabellen
Nun, ich habe die Regionen in eine Extratabelle ausgegliedert und mittels einer Abfrage werden die Reisentabelle und die Regionstabelle abgefragt:
Ich denke mal, die genannten Felder im Code sind selbsterklärend.
Die Abfrage funktioniert soweit wirklich gut und zuverlässig, doch mit wachsender Datenbank (mehr Reedereien, Schiffe und somit Reisen / hier und da neue Regionen) lahmt diese Abfrage.
Meine Frage nun an euch: Wie kann ich das ganze beschleunigen? Abfragezeiten von biszu 59 Sekunden bei DSL sind einfach nicht tragbar!
Ich habe auch schon überlegt, wieder zurück zur alten Variante zu schreiten. Also die Regionen wieder in die Reisentabelle einzugliedern. (Alle jew. entsprechenden Regions-IDs in ein Feld des Datensatzes, getrennt mit Semikolon o.ä.) Diese würde ich dann irgendwie mittels explode auseinanderpflügen, weiß aber nicht ob dies dann wirklich schneller wird.
Ich freu mich auf eure hoffentlich hilfreichen Antworten...
- Mayo.
Ich habe mal wieder ein sehr diffuses Problem.
Vorgeschichte: Spezielle Abfrage zweier Tabellen
Nun, ich habe die Regionen in eine Extratabelle ausgegliedert und mittels einer Abfrage werden die Reisentabelle und die Regionstabelle abgefragt:
PHP:
$query = "SELECT r.region_id, r.reise_id, k.*
FROM region r, kreuzfahrt k
WHERE k.start >= '".$start."' AND k.start <= '".$ende."'";
if($get_ziel) $quer_ziel = " AND r.region_id = '".$get_ziel."' AND r.reise_id = k.reise_id";
if($get_reed) $quer_reed = " AND k.reed_id = '".$get_reed."'";
if($get_schiff) $quer_schiff = " AND k.schiffs_id = '".$get_schiff."'";
$query .= $quer_ziel.$quer_reed.$quer_schiff. " GROUP BY k.reise_id ORDER BY k.start ASC
Ich denke mal, die genannten Felder im Code sind selbsterklärend.
Die Abfrage funktioniert soweit wirklich gut und zuverlässig, doch mit wachsender Datenbank (mehr Reedereien, Schiffe und somit Reisen / hier und da neue Regionen) lahmt diese Abfrage.
Meine Frage nun an euch: Wie kann ich das ganze beschleunigen? Abfragezeiten von biszu 59 Sekunden bei DSL sind einfach nicht tragbar!
Ich habe auch schon überlegt, wieder zurück zur alten Variante zu schreiten. Also die Regionen wieder in die Reisentabelle einzugliedern. (Alle jew. entsprechenden Regions-IDs in ein Feld des Datensatzes, getrennt mit Semikolon o.ä.) Diese würde ich dann irgendwie mittels explode auseinanderpflügen, weiß aber nicht ob dies dann wirklich schneller wird.
Ich freu mich auf eure hoffentlich hilfreichen Antworten...
- Mayo.