/ / MySQL ORDER BY então GROUP By - mysql

MySQL ORDER BY então GROUP By - mysql

Eu tenho o seguinte:

SELECT * FROM (SELECT * FROM table ORDER BY id DESC) t GROUP BY pcid

SELECT * FROM (SELECT * FROM table ORDER BY timestamp DESC) t GROUP BY pcid

Não consigo fazer com que o GROUP BY esteja na ordem correta. Ele sempre puxa do valor mais baixo.

Estou faltando alguma sintaxe que é alheio a mim?

Depois de procurar as últimas horas para encontrar uma solução para esse problema, não consegui resolver. Esta pergunta foi feita porque não consegui encontrar a resposta.

Aqui está a minha estrutura de tabela:

mesa id, primário pcid CPU memphy memcom memvir timestamp

Eu tentei classificar por timestamp e id sem sorte.

Respostas:

0 para resposta № 1

Esta consulta deve retornar as linhas necessárias:

select
t.*
from
table t INNER JOIN (select column, max(highest) m_highest
from table
grouo by column) tm
on t.column=tm.column and t.highest=tm.m_highest

A subconsulta retornará o máximo mais alto por coluna, depois você se juntará de volta à tabela original te retornará todas as linhas que tiverem maior = o máximo mais alto por coluna.


0 para resposta № 2

Você deve dar mais detalhes, mas pode ser algo assim:

 SELECT column, highest, count(somecolumnname)
FROM table_name
GROUP BY column, highest
ORDER BY highest DESC