![]() |
![]() ![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 15 Pomógł: 0 Dołączył: 13.03.2004 Ostrzeżenie: (0%) ![]() ![]() |
Musze zrobic cos takiego. Pobrac z bazy a dokladniej z komorki 'miasto' wszystkie rekordy i wyswietlic je w selekcie alfabetycznie. Chodzi mi o to zeby sie nie powtarzaly. Np ulozyc miasta: Kraków, Krynica, Kryspinów itd
Jak cos takiego zrobic? |
|
|
![]()
Post
#2
|
|
![]() Grupa: Zarejestrowani Postów: 405 Pomógł: 1 Dołączył: 19.09.2003 Skąd: Lublin Ostrzeżenie: (0%) ![]() ![]() |
Nie jestem pewien czy zadziała ale powinno. Jakby były jakieś błędy to napisz. -------------------- Rozwój cywilizacji informatycznej to wyścig między programistami, którzy wytwarzają coraz łatwiejsze
programy użytkowe dla idiotów, a światem produkującym coraz lepszych gatunkowo idiotów. Blog: Małolepszy.info |
|
|
![]()
Post
#3
|
|
![]() Grupa: Przyjaciele php.pl Postów: 1 717 Pomógł: 0 Dołączył: 12.06.2002 Skąd: Wolsztyn..... Studia: Zielona Góra Ostrzeżenie: (0%) ![]() ![]() |
-------------------- Brak czasu :/
|
|
|
![]()
Post
#4
|
|
Grupa: Zarejestrowani Postów: 15 Pomógł: 0 Dołączył: 13.03.2004 Ostrzeżenie: (0%) ![]() ![]() |
To takie proste zapytanie ma byc? Ale chyba to nie uwzgledni tego zeby nie powtarzac rekordow. Musze sprowbowac zaraz. Dzieki
To ktore bedzie lepsze? Ten post edytował kepke 8.08.2004, 22:27:45 |
|
|
![]()
Post
#5
|
|
![]() Grupa: Przyjaciele php.pl Postów: 1 717 Pomógł: 0 Dołączył: 12.06.2002 Skąd: Wolsztyn..... Studia: Zielona Góra Ostrzeżenie: (0%) ![]() ![]() |
Oba uwzglednia niepowtarzalnosc miast, aczkolwiek wg mnie bardziej nadaje sie to z DISTINCT, poniewaz dedykowanym przeznaczeniem tej klauzuli jest wlasnie zwracanie unikalnych wynikow, w przypadku GROUP BY jest to jakby dzialanie uboczne.
-------------------- Brak czasu :/
|
|
|
![]()
Post
#6
|
|
![]() Grupa: Zarejestrowani Postów: 405 Pomógł: 1 Dołączył: 19.09.2003 Skąd: Lublin Ostrzeżenie: (0%) ![]() ![]() |
Cytat(FiDO @ 2004-08-08 23:26:34) FiDO: Kiedyś w jakimś zapytaniu użyłem SELECT DISTINCT ale zapytania strasznie wolno się wykonywały (kilkakrotnie dłużej niż z GROUP BY). Nie orientujesz się czy możliwe jest aby była taka różnica? -------------------- Rozwój cywilizacji informatycznej to wyścig między programistami, którzy wytwarzają coraz łatwiejsze
programy użytkowe dla idiotów, a światem produkującym coraz lepszych gatunkowo idiotów. Blog: Małolepszy.info |
|
|
![]()
Post
#7
|
|
![]() Grupa: Przyjaciele php.pl Postów: 1 717 Pomógł: 0 Dołączył: 12.06.2002 Skąd: Wolsztyn..... Studia: Zielona Góra Ostrzeżenie: (0%) ![]() ![]() |
Szczerze mowiac nie.. sprawdze u siebie czy tez bede tak mial.
PS. Duza ta tabela byla ? Wyciagales tylko jedna kolumne czy wiecej ? -------------------- Brak czasu :/
|
|
|
![]()
Post
#8
|
|
Grupa: Zarejestrowani Postów: 15 Pomógł: 0 Dołączył: 13.03.2004 Ostrzeżenie: (0%) ![]() ![]() |
Tak w ogole to dzieki chlopaki za pomoc
![]() Oba daja takie same wyniki a z szybkoscie to ja nie wiem bo nie mam tak rozbudowanej bazy. |
|
|
![]()
Post
#9
|
|
![]() Grupa: Zarejestrowani Postów: 405 Pomógł: 1 Dołączył: 19.09.2003 Skąd: Lublin Ostrzeżenie: (0%) ![]() ![]() |
Wyciągałem jedną tylko jedną kolumnę a tabela była chyba średnich rozmiarów. Nie pamiętam dokładnie... jakieś kilkaset rekordów.
-------------------- Rozwój cywilizacji informatycznej to wyścig między programistami, którzy wytwarzają coraz łatwiejsze
programy użytkowe dla idiotów, a światem produkującym coraz lepszych gatunkowo idiotów. Blog: Małolepszy.info |
|
|
![]()
Post
#10
|
|
![]() Grupa: Zarząd Postów: 2 277 Pomógł: 6 Dołączył: 27.12.2002 Skąd: Wołów/Wrocław ![]() |
według moich testów, przynajmniej na najprostrzych zapytaniach, operujących na kolumnie tekstowej, DISTINCT jest minimalnie szybsze od GROUP BY (co zresztą również wydaje mi się naturalne, gdzyż takie właśnie jest jego przeznaczenie)
-------------------- "Niezależnie od tego, jakie masz osiągnięcia, ktoś Ci pomaga..."
|
|
|
![]()
Post
#11
|
|
![]() Grupa: Przyjaciele php.pl Postów: 1 717 Pomógł: 0 Dołączył: 12.06.2002 Skąd: Wolsztyn..... Studia: Zielona Góra Ostrzeżenie: (0%) ![]() ![]() |
Zrobilem test na tabeli z okolo 40 tys. rekordow, unikalnych jest troche ponad 300. DISTINCT byl _znacznie_ szybszy (ok 0.0008 wzgledem 0.1xxx dla GROUP BY), jednak jest jedno "ale". Wynik zwrocony przy pomocy DISTINCT nie jest posortowany, za to ten z GROUP BY jest. Gdy wiec dodamy do DISTINCT'a sortowanie, aby otrzymac te same wyniki (w tej samej kolejnosci), czasy bardzo zblizaja sie do siebie (co znaczy, ze wiekszosc tego zapytania to jest wlasnie sortowanie), a roznica jest dopiero na trzecim miejscu po przecinku.
-------------------- Brak czasu :/
|
|
|
![]()
Post
#12
|
|
![]() Grupa: Zarejestrowani Postów: 405 Pomógł: 1 Dołączył: 19.09.2003 Skąd: Lublin Ostrzeżenie: (0%) ![]() ![]() |
Dzięki wielkie za rozwianie moich wątpliwości. Widzę, że to co działo się wtedy u mnie było jakimś dziwnym zbiegiem okoliczności nie posiadającym logicznego wytłumaczenia.
![]() -------------------- Rozwój cywilizacji informatycznej to wyścig między programistami, którzy wytwarzają coraz łatwiejsze
programy użytkowe dla idiotów, a światem produkującym coraz lepszych gatunkowo idiotów. Blog: Małolepszy.info |
|
|
![]() ![]() |
![]() |
Aktualny czas: 22.08.2025 - 05:21 |