2008-09-18 12 views

Odpowiedz

8

Dodaj DESC do klauzuli GROUP BY, np. :

GROUP BY myDate DESC 
1

ORDER BY foo DESC?

6

Jak MySQL documentation mówi

SELECT * FROM foo GROUP BY bar 

jest równoważna

SELECT * FROM foo GROUP BY bar ORDER BY bar 

domyślne zachowanie nie może być zmieniony, ale można użyć

SELECT * FROM foo GROUP BY bar ORDER BY bar DESC 

nie odczuwając żadnych kar Speed ​​AS sortowanie zostanie przeprowadzone na zgrupowanym polu. Przy okazji, gdy sortowanie nie jest ważne, możesz uzyskać (małe) przyspieszenie, używając ORDER BY NULL.

10

Powinieneś używać wyprowadzonych tabel na swoim SQL. Na przykład, jeśli chcesz odebrać najnowszy wiersz dla specyficznej aktywności jesteś próba wykorzystania:

select * 
from activities 
group by id_customer 
order by creation_date 

ale to nie działa. Zamiast tego spróbuj:

SELECT * 
FROM (select * 
     from activities 
     order by creation_date desc) sorted_list 
GROUP BY id_customer