hej, przy poleceniu distinct dane wynikowe sa sortowane, czy mozna to zmienic tak, aby pojawialy sie w tej samej kolejnosci, co w tabeli ??
Witam
Polecenie DISTINCT służy do eliminacji powtórzeń, w razie gdyby takowe nastąpiły podczas zwrócenia wierszy spełniających dane zapytanie SELECT.
Jeśli chodzi o sortowanie to:
ORDER BY [kolumna] ASC ---> rosnąco
ORDER BY [kolumna] DESC ---> malejąco
np.
SELECT DISTINCT [kolumny]
FROM [nazwa tabeli]
WHERE[warunki wyszukania]
ORDER BY [kolumna] ASC
Mam nadzieję, że o to Ci chodziło, bo średnio zrozumiałem posta ;-P
Pozdrawiam
byc moze, niezbyt dokladnie sie wyrazilem :-)
jezeli jest
kasia
ania
kasia
franek
to wynikiem, po distinct, bedzie
ania
kasia
franek
a chcialbym, aby dane wynikowe, byly w tej samej kolejnosci, co pierwsze
wystapienie danego slowa, czyli
kasia
ania
franek :>
gdk napisał(a)
a chcialbym, aby dane wynikowe, byly w tej samej kolejnosci, co pierwsze
wystapienie danego slowa, czylikasia
ania
franek :>
Kolumna z imionami z pewnością posiada swój ID, więc domyślnie posortowane będą według tegoz ID, jeżeli otrzymujesz inny wynik to posortuj według tego ID
ORDER BY [Kolumna ID] ASC
Jeżeli nie posiadasz ID to obawiam się, że inaczej Ci tego nie posortuje. Musisz wtedy dołożyć go sobie.
Pozdrawiam ;-)
dzieki za odpowiedz, ale chyba nie da sie polaczyc funkcji distinct z order by, bo ta pierwsza jest funkcja grupujaca, a druga odnosi sie do kolumny z wartosciami nie powtarzjacymi sie :>
pozdrawiam
chyba nie da sie polaczyc funkcji distinct z order by, bo ta pierwsza jest funkcja grupujaca, a druga odnosi sie do kolumny z wartosciami nie powtarzjacymi sie
Nie ma problemu z połączeniem tych klauzul, nie wykluczają się one wcele wzajemnie. A jeśli chodzi o grupowanie to musisz uzyć klauzuli GROUP BY. Poniżej zamieszczam Ci przykład ze standardowej bazy Northwind w MS SQL:
select distinct categoryid, productname, unitprice, count(*) from products
group by categoryid, productname, unitprice /* wszystkie użyte w Select */
order by 1 desc /* malejąco */
Mam nadzieję, że to rozwiąże już Twoje problemy
Pozdrawiam :-)
teraz powinno juz byc dobrze,
pozdrawiam ;-)