Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

Bruno Da Silva Valenga

SQL buscar ultimo registro na tabela com group BY

Recommended Posts

Boa noite, explicando a situação..

 

Estou construindo um sisteminha que faz a monitoração de alguns hosts, eles são servidores Linux, eles enviam por wget --post-data, parâmetros, um php recebe esses parâmetros e inseri no banco de dados. Ate ai tudo certo.

 

Agora estou criando um dashboard (painel), para eu visualizar os hosts Linux que conseguiram ser monitorados. Ate ai tudo certo também, porem.. eu possuo vários clientes que ao mesmo tempo podem possuir varias maquinas. E eu quero fazer com que seja agrupado as ultimas entradas no SQL de uma determinada maquina filtradas por data.

 

Segue exemplo da tela:

 

https://www.dropbox.com/s/gp7pftiy6lcu9z7/Sem%20t%C3%ADtulo.png

 

Queria que ele juntasse as maquinas que possuem o mesmo id, mostrando o mais recente.

 

 

 

Minha query:

 

SELECT `clientes`.*, `maquinas`.*, `logs`.* FROM `clientes` INNER JOIN `maquinas` ON `clientes`.cliente_id = `maquinas`.cliente_id INNER JOIN `logs` ON `maquinas`.maquina_id = `logs`.log_maquina_codigo ORDER BY `logs`.log_id DESC

 

 

Minhas tabelas:

https://www.dropbox.com/s/1p3wwqeh8nckf5v/sql.png

Compartilhar este post


Link para o post
Compartilhar em outros sites

SHOWWWWWWWWWW, consegui Motta! muito obrigado!

 

meu select ficou assim agora!!

 

SELECT `clientes`.*, `maquinas`.*, `logs`.* FROM `clientes` INNER JOIN `maquinas` ON `clientes`.cliente_id = `maquinas`.cliente_id INNER JOIN `logs` ON `maquinas`.maquina_id = `logs`.log_maquina_codigo where `logs`.log_data_ultima_atualiza = (select max(log_data_ultima_atualiza) AS maximo from `logs` WHERE `logs`.log_maquina_codigo = `maquinas`.maquina_id) ORDER BY `logs`.log_id DESC

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.