Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Czy Order By zawsze spowalnia?
Forum PHP.pl > Forum > Bazy danych
tmk
Witam,

czy używanie Order By zawsze spowalnia zapytanie sql ? obserwuję sobie czasy i nie mogę się doszukać sytuacji,
w ktorej order by nie wpływałoby na czas wykonania zapytania...

czy to jest skomplikowany zabieg?
nospor
posortowanie danych zawsze jest dodatkowym nakladem pracy, to i czas jest dluzszy. jesli nie chcesz miec danych sortowanych, to nie sortuj. jesli zas chcesz miec sortowane, to lepiej rob to na poziome bazy, niz na poziomie php, więc nie placz, że dziala ciut wolniej winksmiley.jpg
tmk
Cytat
to lepiej rob to na poziome bazy, niz na poziomie php

czyli sortwać przy dodawaniu do bazy, a nie przy wyciąganiu z niej danych? bo nie wiem czy dobrze zrozumiałem to zdanie
nospor
nie, mialem na mysli zebys sortowal przy wyciąganiu poprzez order by.
Sortowanie przy dodawaniu mija sie z celem, bo przy wyciąganiu mozesz chciec sortowac po roznych kolumnach. pozatym nie wyobrazam sobie sortowania przy dodawaniu. rekordy sa dodawane pokolei. chcąc sortowac, musialbys przy dodawaniu usuwac wszystkie i jeszcze raz pokolei je wkladac juz w kolejnosci posortowanej

edit: no i pamietaj o zalozeniu indexow na pola, wzgledem ktorych bedziesz sortowal. przyspieszy to tę operację
sobstel
Cytat(nospor @ 2006-02-20 11:57:55)
chcąc sortowac, musialbys przy dodawaniu usuwac wszystkie i jeszcze raz pokolei je wkladac juz w kolejnosci posortowanej

niekoniecznie, wystarczy ALTER table ORDER BY cols, co nie zmienia faktu, że sortowanie przy dodawaniu nie jest dobrym pomysłem.
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.