Ir para conteúdo

POWERED BY:

Arquivado

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

Felipe Eagle

Selecionar registro máximo

Recommended Posts

Galera,Estou tentando fazer uma query num sistema para rastreadores e não consigo fazer funcionar de forma alguma..Primeiro tentei assim.. funcionou, porém ele retorna somente a datahora com o valor máximo e eu na verdade gostaria que ele pegasse na tabela o ultimo valor de cada veículo pela datahora maior, ou seja, a última posição com todas as infos de cada veículo..$Sql= "SELECT cadvei.placvei, histpos.velocidade, histpos.latconv, histpos.longconv, DATE_FORMAT( MAX( histpos.datahora ) , '%d/%m/%Y %H:%i:%s' ) AS data1, DATE_FORMAT( histpos.datinc, '%d/%m/%Y %H:%i:%s' ) AS data2, histpos.mensmotv, histpos.motor, histpos.direcao, histpos.codposFROM cadveiINNER JOIN histpos ON cadvei.codvei = histpos.codveiGROUP BY cadvei.codveiORDER BY data1 DESC";placvei velocidade latconv longconv data1 data2 mensmotv motor direcao codpos KKK0001 0 -22.821 -43.3351 29/08/2006 18:15:07 12/08/2006 13:13:30 ARROMBA N 0 1 KYDXXX 0 0 0 13/02/2007 19:26:01 03/12/2005 15:57:04 POSICAO S 0 1 LVA6AAA 0 -22.9219 -43.209 13/02/2007 17:42:21 02/09/2006 14:42:41 POSICAO N 0 1 LCABBB4 0 -22.2342 -45.704 13/02/2007 15:02:22 31/01/2006 15:30:57 PER N 46 1 LVZ5OOO 0 -22.7843 -43.3016 10/02/2007 13:06:45 11/03/2006 14:10:07 POSICAO S 338 1 Esse é o segundo teste, porém tb não funciona.. Alguem tem uma sugestão?SELECT cadvei.placvei, histpos.velocidade, histpos.latconv, histpos.longconv, DATE_FORMAT( histpos.datahora, '%d/%m/%Y %H:%i:%s' ) AS data1, DATE_FORMAT( histpos.datinc, '%d/%m/%Y %H:%i:%s' ) AS data2, histpos.mensmotv, histpos.motor, histpos.direcao, histpos.codposFROM cadveiINNER JOIN histpos ON cadvei.codvei = histpos.codveiWHERE histpos.datahora = MAX(histpos.datahora)GROUP BY cadvei.codveiORDER BY data1 DESC

Compartilhar este post


Link para o post
Compartilhar em outros sites

Se você estiver usando a versão 4.1 ou superior, tente com:

 

SELECT	cadvei.placvei,	histpos.velocidade,	histpos.latconv,	histpos.longconv,	DATE_FORMAT(histpos.datahora, '%d/%m/%Y %H:%i:%s') AS data1,	DATE_FORMAT(histpos.datinc, '%d/%m/%Y %H:%i:%s') AS data2,	histpos.mensmotv,	histpos.motor,	histpos.direcao,	histpos.codposFROM cadvei	INNER JOIN histpos AS h	ON cadvei.codvei = histpos.codveiWHERE histpos.datahora = (	SELECT MAX(h2.datahora) FROM histpos AS h2 WHERE h2.codvei = h.codvei)GROUP BY cadvei.codveiORDER BY data1 DESC

Compartilhar este post


Link para o post
Compartilhar em outros sites

Estou usando a versão 5.. e ao testar com essa query aparece o seguinte erro: Mensagens do MySQL : #1054 - Unknown column 'histpos.velocidade' in 'field list' Alterei todos os campos que estavam com histpos. para h. e o Mysql ficou processando até eu matar o processo.. :(

Compartilhar este post


Link para o post
Compartilhar em outros sites

Será que assim ajuda? Qq coisa eu mando de outra forma..

 

------------------------------------------------

histpos

Campo Tipo Nulo Padrão

codvei int(11) Sim 0

codpos int(11) Sim 0

mensmotv varchar(30) Sim NULL

atualizado char(1) Sim NULL

datahora datetime Sim NULL

latconv float Sim NULL

longconv float Sim NULL

totsat int(11) Sim NULL

altitude int(11) Sim NULL

direcao int(11) Sim NULL

velocidade int(11) Sim NULL

atuador1 char(1) Sim NULL

atuador2 char(1) Sim NULL

atuador3 char(1) Sim NULL

atuador4 char(1) Sim NULL

sensor1 char(1) Sim NULL

sensor2 char(1) Sim NULL

sensor3 char(1) Sim NULL

sensor4 char(1) Sim NULL

motor char(1) Sim NULL

bateria char(1) Sim NULL

arrombamento char(1) Sim NULL

funcequi int(11) Sim NULL

usuinc int(11) Sim 0

datinc datetime Sim 0000-00-00 00:00:00

antifurto char(1) Sim NULL

gradativo char(1) Sim NULL

ancora char(1) Sim NULL

fleetlink_tx char(1) Sim NULL

 

 

Índices: Nome chave Tipo Cardinalidade Campo

PRIMARY PRIMARY 78159 codvei

codpos

 

 

Uso do espaço: Tipo Uso

Dados 5,971 KB

Índice 1,237 KB

Total 7,208 KB

Estatísticas da coluna: Comandos Valor

Formato dinâmico

Colunas 78,159

Tamanho da coluna ø 78

Tamanho do registro ø 94 Bytes

Criação Jun 23, 2006 as 11:00 PM

Última atualização Fev 27, 2007 as 10:54 AM

 

------------------------------------------------

cadvei

Campo Tipo Nulo Padrão

codvei int(11) Sim 0

codcli int(11) Sim NULL

codmot int(11) Sim NULL

placvei varchar(7) Sim

chasvei varchar(20) Sim NULL

modvei varchar(20) Sim NULL

anovei int(11) Sim NULL

corvei varchar(20) Sim NULL

marcvei varchar(20) Sim NULL

datins date Sim NULL

nominst varchar(50) Sim NULL

veiatv char(1) Sim NULL

tipveiopc char(1) Sim NULL

cidplacvei varchar(25) Sim NULL

ufplacvei char(2) Sim NULL

numequi varchar(15) Sim

tipequi char(1) Sim

numtel varchar(10) Sim

usuinc int(11) Sim 0

datinc datetime Sim 0000-00-00 00:00:00

usualt int(11) Sim NULL

datalt datetime Sim NULL

obsvei text Sim NULL

usucom varchar(20) Sim NULL

senusu varchar(20) Sim NULL

figura varchar(30) Sim NULL

figgeo int(11) Sim NULL

passnet varchar(20) Sim NULL

 

 

Índices: Nome chave Tipo Cardinalidade Campo

PRIMARY PRIMARY 5 codvei

indchasvei INDEX Nenhum chasvei

indplacvei INDEX Nenhum placvei

 

 

Uso do espaço: Tipo Uso

Dados 1,092 Bytes

Índice 4,096 Bytes

Total 5,188 Bytes

Estatísticas da coluna: Comandos Valor

Formato dinâmico

Colunas 5

Tamanho da coluna ø 218

Tamanho do registro ø 1,038 Bytes

Criação Mar 06, 2006 as 07:03 PM

Última atualização Fev 27, 2007 as 10:54 AM

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.