/ / SQL - Jak zamawiać przez min date - mysql, sql, datetime

SQL - jak zamawiać według daty min - mysql, sql, datetime

Mam tabelę z dziennikami

PERSON ID             LOGDATE (DATETIME)
1000                2015-10-20 10:00:00
1000                2015-11-11 09:10:22
2001                2015-10-11 10:22:11

Muszę zamówić dane przez LOGDATE -DATETIME - ale tylko z najniższą datą dla każdego ID.

select PERSONALID, LOGDATE from TABLE   group by PERSONALID order by
MIN(LOGDATE) DESC

Potrafię GRUPOWA według ID - ZAMÓWIENIE WEDŁUG MNIEJSZOŚCI (każdy wynik z ID), ale WYNIK FINALNY nie powoduje uporządkowania wyników do MIN DATE ..

RESULT:
1000 ------------- 2015-10-20 10:00:00 (min date for ID=1000)
2001 ------------- 2015-10-11 10:22:11 (min date for ID=2001)

właściwą odpowiedzią jest:

RESULT:
2001 ------------- 2015-10-11 10:22:11 (min date for ID=2001)
1000 ------------- 2015-10-20 10:00:00 (min date for ID=1000)

co jest nie tak?

Odpowiedzi:

4 dla odpowiedzi № 1

Powinno to zrobić:

select PERSONALID, MIN(LOGDATE) as mindate
from TABLE
group by PERSONALID
order by mindate

0 dla odpowiedzi nr 2

Musisz wybrać MIN(LOGDATE), nie LOGDATE. Wybór LOGDATE powoduje, że MySQL zwraca wartość nieokreślony zapis z każdej grupy - patrz Obsługa MySQL GROUP BY po więcej informacji.