![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 215 Pomógł: 44 Dołączył: 31.07.2011 Skąd: wrocław Ostrzeżenie: (0%) ![]() ![]() |
Witam.
Mam taką funkcję:
Nie będę tłumaczył wszystkiego, osoby znające się zrozumieją na pewno (po nazwach funkcji wiadomo o co chodzi). Chodzi o to, że w jednej tabeli mam miejscowości wraz ze współrzędnymi geograficznymi, a w drugiej odległości między miejscowościami. W ten sposób jak ja to rozwiązałem to strasznie wolno chodzi (obecnie w bazie jest ok 1000 miejscowości). Co prawda obliczam tylko raz, ew. aktualizacja w przyszłości po dodaniu nowych miejscowości, ale tak z ciekawości chciałbym was zapytać, czy widzicie jakieś lepsze rozwiązanie? Tak jak mam w przykładzie dla LIMIT 3000 u mnie na laptopie funkcja wykonuje się ponad 15 sekund. Kiedyś to zrobiłem bardziej w php, przeleciałem całą tabelę w pętlach, ale dzięki temu sposobowi łatwiej mi jest dodawać nowe miejscowości. |
|
|
![]() |
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 215 Pomógł: 44 Dołączył: 31.07.2011 Skąd: wrocław Ostrzeżenie: (0%) ![]() ![]() |
Właśnie jest tam trochę obliczeń:
Bałem się nawet myśleć o tym, żeby obliczenia robić w mysql (IMG:style_emoticons/default/smile.gif) Nawet nie chciałem próbować zrobić tego tylko w mysql, a tu proszę jak szybko poszło: całą bazę (niecałe 500tys) wygenerowane w niecałe 20 sekund:
Ma ktoś może teraz sugestie, jak zoptymalizować to zapytanie? |
|
|
![]() ![]() |
![]() |
Aktualny czas: 15.10.2025 - 13:12 |