![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 60 Pomógł: 0 Dołączył: 6.12.2010 Ostrzeżenie: (0%) ![]() ![]() |
Witam,
Szukam polecenia pasującego do mojego zadania lecz nic nie pasuje a całość chciałbym zrealizować po stronie bazy danych. Otóż mam dwie daty startową i końcową oraz rekordy w bazie, każdy z tych rekordów ma datę start i stop. Chciałbym wyświetlić wszystkie dni od daty startowej do końcowej zliczając ile tych rekordów będzie pasowało do poszczególnych dat. Nie chce rozbijać tych czynności na php. Domyślam się że w MySQL trzeba będzie zastosować jakąś pętle. Najważniejsze jest dla mnie aby zapytanie było szybkie = wydajne. Rekordów mam ponad 1000. Z góry dziękuję za pomoc, jak coś uda mi się znaleźć to tu umieszczę, może wspólnymi siłami dojdziemy jak to zrobić (IMG:style_emoticons/default/smile.gif) Pozdrawiam serdecznie Stefan |
|
|
![]() |
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 60 Pomógł: 0 Dołączył: 6.12.2010 Ostrzeżenie: (0%) ![]() ![]() |
Zamiast odsyłać mnie do Google gdzie nic nie znalazłem (pisałem o tym na początku) to wolałbym abyś po swojemu odpowiedział na mój problem.
Mój problem nie polega na wyświetlanych danych z jakiegoś przedziału datowego - do tego podajesz mi odnośniki. Chodziło mi o WYGENEROWANIE wszystkich dat z jakiegoś przedziału datowego, a następnie przeszukanie bazy żeby dla każdej wartości datowej policzył wiersze. Rozwiązałem to w taki sposób że zrobiłem nową tabelę która zawiera wygenerowane daty z przedziału na którym będę pracował (wyszło 2400 wartości), wszystko udało mi się zrobić tak jak chce lecz czas wykonania polecenia pozostawia wiele do życzenia ~0.03s (i7,ssd), przez co zapytanie staje się bezużyteczne bo liczyłem na przynajmniej 0.001s. Im większy przedział datowy mam do przeliczenia tym zapytanie wykonuje się dłużej :/ Indeksy oczywiście dodane do pól które występują w warunkach i grupowaniu Oto mój kod:
Tabela daty: 2400 wierszy Tabela dane: 1450 wierszy Ten post edytował Sztef89 9.01.2014, 19:40:05 |
|
|
![]() ![]() |
![]() |
Aktualny czas: 14.10.2025 - 19:34 |