Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> Zapytanie mysql
kepke
post
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?
Go to the top of the page
+Quote Post
Jojo
post
Post #2





Grupa: Zarejestrowani
Postów: 405
Pomógł: 1
Dołączył: 19.09.2003
Skąd: Lublin

Ostrzeżenie: (0%)
-----


  1. SELECT miasto FROM tabela GROUP BY miasto ORDER BY miasto ASC

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
Go to the top of the page
+Quote Post
FiDO
post
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%)
-----


  1. SELECT DISTINCT miasto FROM tabela ORDER BY miasto


--------------------
Brak czasu :/
Go to the top of the page
+Quote Post
kepke
post
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
Go to the top of the page
+Quote Post
FiDO
post
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 :/
Go to the top of the page
+Quote Post
Jojo
post
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)
  1. SELECT DISTINCT miasto FROM tabela ORDER BY miasto

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
Go to the top of the page
+Quote Post
FiDO
post
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 :/
Go to the top of the page
+Quote Post
kepke
post
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 winksmiley.jpg
Oba daja takie same wyniki a z szybkoscie to ja nie wiem bo nie mam tak rozbudowanej bazy.
Go to the top of the page
+Quote Post
Jojo
post
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
Go to the top of the page
+Quote Post
DeyV
post
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..."
Go to the top of the page
+Quote Post
FiDO
post
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 :/
Go to the top of the page
+Quote Post
Jojo
post
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. smile.gif


--------------------
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
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 22.08.2025 - 05:21