Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> wyświetlanie wszystkich kolumn przy distinct na jedną z kolumn
aladin07
post
Post #1





Grupa: Zarejestrowani
Postów: 68
Pomógł: 0
Dołączył: 22.07.2007

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


w jaki sposób można wyświetlić wszystkie kolumny przy wyszukaniu unikalnych wartości dla pojednyczej kolumny

próbowałem
  1. SELECT DISTINCT (tabela.kolumna_nazwa), * FROM TABELA


ale powoduje to wyświetlnie unikalnych wartości dla kolumny będącej indeksem, a nie tej którą ja chce
w jaki sposób to zapisać żeby działało tak jak ja chce?
Go to the top of the page
+Quote Post
kefirek
post
Post #2





Grupa: Zarejestrowani
Postów: 781
Pomógł: 256
Dołączył: 29.06.2008

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


  1. SELECT * FROM TABELA GROUP BY tabela.kolumna_nazwa
Go to the top of the page
+Quote Post
aladin07
post
Post #3





Grupa: Zarejestrowani
Postów: 68
Pomógł: 0
Dołączył: 22.07.2007

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


w sumie to co podałeś działa ale czy jest lepsze to nie wiem

dajmy na to przykład jeszcze z innej beczki bo póki co wychodzi mi na to,
że można uzyskać taki sam efekt za pomocą DISTINCT jeśli wypisze się
wszystkie kolumny, które chce się wyświetlić a szybkość działania jest
w moim przypadku (tabela z 4,5mln wierszy) drastycznie różna

czyli
  1. SELECT DISTINCT (tabela.produkt_name), produkt_id FROM tabela

jest dużo szybszy
niż
  1. SELECT tabela.produkt_name, tabela.produkt_id FROM tabela ORDER BY tabela.produkt_name


przy czym distinct bierze bez dodatkowych zastrzezen produkty od najmniejszego produkt_id
a order by bierze z "najmniejszym" produkt_name

i teraz roznica czasowa u mnie
wykonanie distincta z limitem 10 daje czas 0,05sek, a w przypadku order by z limitem 10 daje az 52 sek exclamation.gif

nie wiem czy to normalne ale wniosek z tego taki, że jesli chce sie wyswietelac wszystkie kolumny
to trzeba je ręcznie wypisać bo gwiazdki nie wolno chyba stosować wtedy
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: 21.08.2025 - 05:07