REGISTOS NO FINAL DA TABELA - TA CONFUSO

USUARIO.EXCLUIDOS 03/01/2005 22:49:25
#58387
Obrigado, a sugestão de incluir o campo "Rodada" na tabela, é excelente...era mesmo o que me estava faltando! Até porque no txt gerado pela a aplicação externa, vem essa informação. Como é que não pensei nisso antes
[S51]

Muito obrigado aos 2 pela a atenção.
Vou testar pois ainda não sei se os sockets não usados vão retornar NULL ou sei lá....

Assim que saiba digo alguma coisa.

Até logo
USUARIO.EXCLUIDOS 04/01/2005 00:01:39
#58399
OK...rendo-me....não tou a conseguir criar a expressão SQL... tou a tentar:
 
SELECT Socket, Resultado FROM Tabela WHERE Socket = x GROUP BY Socket HAVING MAX(Rodada)


Mas não funciona...please....ajudem-me.....

USUARIO.EXCLUIDOS 04/01/2005 00:05:51
#58400
KPELLAJR,

Creio que ele queira o resultado da ultima rodada. Mas não seria ruim colocar o campo rodada, pois assim ele teria um historico, do que aconteceu nas rodadas anteriores.

MIGUEL ANGELO
Tenta assim
SELECT Socket, Resultado FROM Tabela WHERE Socket = x GROUP BY Socket HAVING Rodada=MAX(Rodada)
LCSD 04/01/2005 04:56:48
#58415
Miguel

Para dar um tiro nesta questão!


Por favor, coloque um trecho FINAL do arquivo TXT, por exemplo uns 60 registros assim tanto eu quanto o Renato Mattos poderíamos montar uma tabela e um exemplo para você.
[s79]

[txt-color=#0000ff]** Em tempo, ESPECIFIQUE quais os resultados finais desta amostragem que você nos enviará. [/txt-color]
USUARIO.EXCLUIDOS 04/01/2005 15:18:18
#58534
Renato,

A query "SELECT Socket, Resultado FROM Tabela WHERE Socket = x GROUP BY Socket HAVING Rodada=MAX(Rodada)" retorna a seguinte msg de erro:

"[Microsoft][ODBC Microsoft Access Driver] You tried to execute a query that does not include the specified expresion 'Rodada=MAX(Rodada)' as part of an aggregate function."
Porque acontece isto?

KpellaJr,
Se eu conseguir pà'r esta instrução SQL a funcionar, o meu problema fica resolvido (pra já).

Obrigado a ambos e espero não estar a ser chato.
USUARIO.EXCLUIDOS 04/01/2005 16:07:25
#58562
Consegui contornar a situação da seguinte forma:
"SELECT MAX(Rodada) from Tabela"
"roDaDa = Val(rS(0))"
e depois faço:
"SELECT Socket,Resultado FROM Tabela WHERE Rodada= " & roDaDa& " and Socket=x"

E tá funcionando bem........mas haverá outra forma de fazer isto?....é que com tanto remendo no meu programa, ele tá demorando mais de 5 segundos para retornar os valores.....e só tem 944 linhas na tabela.
USUARIO.EXCLUIDOS 04/01/2005 21:46:32
#58638
Experimenta essa

Select Max(Rodada),Socket,Resultado From Tabela Where Socket = x Group By Socket, Resultado
USUARIO.EXCLUIDOS 04/01/2005 22:21:15
#58640
Não, Renato, assim tb não dá...
USUARIO.EXCLUIDOS 04/01/2005 22:31:03
#58642
Tenta essa
Select Socket, Resultado From Tabela Where Socket = x and Rodada = ( Select MAX(Rodada) From Tabela)
USUARIO.EXCLUIDOS 04/01/2005 23:22:54
#58648
é isso mesmo.....funcionou!

Neste momento este problema está resolvido.
Provavelmente (muito mesmo) vão-me surgir mais dúvidas no desenvolvimento desta aplicação......mas sei que aqui no VBMania, certamente encontrarei a resposta!

Sois o máximo.

Obrigado
Página 2 de 2 [20 registro(s)]
Tópico encerrado , respostas não são mais permitidas