![]() |
SQL-Abfrage Optimieren
select a.plz, b.text_val, c.loc_id, a.*, b.loc_id, c.lon, c.lat,
@c := ( acos( sin(RADIANS(c.lat)) * sin(RADIANS(47.8)) + cos(RADIANS(c.lat)) * cos(RADIANS(47.8)) * cos(RADIANS(c.lon - 13.0333)) ) * 6380 ) entfernung from optiker a left join geodb_textdata b on a.plz = b.text_val left join geodb_coordinates c on b.loc_id = c.loc_id ORDER by entfernung limit 1,1500 wollte grade fragen ob man die joins noch optimieren kann oder geschickter anlegen... hab aber grad ned index für die tables gemacht und bin so von 27sec execute time auf 0.13 gekommen naja wenn er noch ned idee hat wie man das optimieren kann bitte :) wenn sich wer fragt was das ist: Die rechnung oben ist entfernungsrechnung zwischen zwei punkte am globus... will ne page machen wo man seine heim plz eingibt... und dann wird mithilfe der opengeodb (und meine gesammelten optikeradressen) die einem am nächste optiker angezeit :hehe: is nur zum spass weil ich mich mit der opengeodb spielen wollte... die fixen coordinaten in der abfrage san die von salzburg |
Hmm jetzt hab ich noch ein problem
hab zu ner bestehenden datenbank mit daten neue daten per csv geadded nur is mir da passiert das da am anfang vom feld ein leerzeichen ist... kann ich all die felder irgendwie per querry aufeinmal ändern? mit ltrim() kann ich es ja im query berücksichtigen aber würde die daten gerne in einem rutsch bereinigen... |
hi, ich versteh nicht ganz was dein problem ist, sollte doch mit update gehen:
Code:
UPDATE table set spalte1=ltrim(spalte1); |
danke aber auf das bin ich um 4:00 nimma gekommen :hehe:
|
Alle Zeitangaben in WEZ +2. Es ist jetzt 13:54 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
© 2009 FSL Verlag