Clique abaixo para nos ajudar
Conectar-se

Esqueci minha senha

Estamos no Facebook
Buscar
 
 

Resultados por:
 


Rechercher Busca avançada

Quem está conectado
18 usuários online :: Nenhum usuário registrado, Nenhum Invisível e 18 Visitantes :: 1 Motor de busca

Nenhum

[ Ver toda a lista ]


O recorde de usuários online foi de 468 em 1/3/2012, 10:43
TRY BEGIN E FLOCK()

17/4/2017, 10:32 por AJC

Pessoal estou tendo alguns problemas de gravação em rede, estou usando
try begin, mas vi algo na …

Comentários: 0

Exportar Dados Campo Memo Tabela DBF

10/4/2017, 10:28 por fcampos

Olá bom dia.

Estou tentando exportar os dados de algumas tabelas em formato dbf pelo foxpro.
O …

Comentários: 2

Função EVL()

8/4/2017, 12:18 por Clebervfp

Bom dia a todos.
Vim compartilhar de uma Função do próprio VFP que me benefício muito.
Função …

Comentários: 0

COMO BLOQUEAR REGISTRO OU TABELA NO VISUAL FOXPRO PARA GRAVAÇÃO EM REDE

3/4/2017, 10:29 por AJC

Pessoal estou tendo um problema que acontece sempre busco na minha tabela de clientes o ultimo …

Comentários: 2

Controlar Scanner Twain

31/3/2017, 17:31 por Kleber R Bento

Estou usando o EZTW32.DLL para criar uma ferramenta que escaneia e gera PDF. Porém com esses …

Comentários: 0

Estatísticas
Temos 7067 usuários registrados
O último usuário registrado atende pelo nome de Preula

Os nossos membros postaram um total de 48 mensagens em 25 assuntos

SQL Group by - Filtrar último registro de cada grupo !

Ver o tópico anterior Ver o tópico seguinte Ir em baixo

Resolvido SQL Group by - Filtrar último registro de cada grupo !

Mensagem por halisson em 3/11/2011, 12:32

-
Surgiu uma dúvida, e gostaria que algum dos foxers de plantão me ajudassem.
É SQL, mas o código é VFP, por isso estou postando aqui.
Enfim, estou precisando obter, num "Group By", a seguinte solução:

1. Tabela "Sem" Group By
-------------------------------------------------------------
DATA | PRODUTO | SALDO (DIA ) | SALDO ACUMULADO
-------------------------------------------------------------
01/11/2011 SUCO 10 10
01/11/2011 SUCO -5 5
------------------------------------------------------------

2. Tabela "Com" Group By ordenada por "PRODUTO","DATA"
-------------------------------------------------------------
DATA | PRODUTO | SALDO (DIA ) | SALDO ACUMULADO
-------------------------------------------------------------
01/11/2011 SUCO 5 5
-------------------------------------------------------------

O "x" da questão é no "SALDO ACUMULADO". No Group By, o registro
tem que ser o último valor do "SALDO ACUMULADO" dentro da "DATA"
que está sendo agrupada. Tentei o "MAX()" mas ele me retorna o
"MAIOR" valor do bloco, e não, o "ÚLTIMO".

Não sei se eu deveria usar "HAVING" nesse caso... alguma luz?

Abraço.
-

avatar
halisson
Participante Regular
Participante Regular


Voltar ao Topo Ir em baixo

Resolvido Re: SQL Group by - Filtrar último registro de cada grupo !

Mensagem por m@r<3|o em 3/11/2011, 21:19

Seria possivel colocar uma coluna chave de codigo sequencial, ai ficaria mais do jeito

Aparentement usar Count traria a Coluna Saldo da Ultima Coluna



Código:
CLEAR
CLEAR ALL

SET DATE TO BRITISH
CREATE CURSOR  teste ( codigo c(5) , data d(8) , Saldo n(12,2))

INSERT INTO teste ( codigo , data , saldo );
            VALUES ('00001' , DATE() - 1 , -5 )
           
INSERT INTO teste ( codigo , data , saldo );
         VALUES ('00002' , DATE(), 10)

INSERT INTO teste ( codigo , data , saldo );
            VALUES ('00003' , DATE(), 5)
                     
INSERT INTO teste ( codigo , data , saldo );
            VALUES ('00004' , DATE(), 3)

parametro = DATE()
SET ENGINEBEHAVIOR 70
SELECT  codigo,  data , saldo  ;
FROM teste;
WHERE data = parametro;
INTO CURSOR aa READWRITE

SELECT codigo, saldo, COUNT(*) as registros ;
FROM aa ;
GROUP BY data ;
INTO CURSOR ab READWRITE

IF _tally =< 0
   =MESSAGEBOX('Não Foram Encontrados Registros para esse Periodo')
   RETURN 0
ENDIF

SELECT saldo ;
FROM ab  ;
WHERE !EMPTY(codigo) ;
INTO CURSOR ac READWRITE

BROWSE

m@r<3|o
Participante Assíduo
Participante Assíduo


Voltar ao Topo Ir em baixo

Resolvido Re: SQL Group by - Filtrar último registro de cada grupo !

Mensagem por halisson em 3/11/2011, 23:03

-
Exatamente m@r<3|o,

a solução é usar o "COUNT(*)".

Obrigado.

Abraço.
-
avatar
halisson
Participante Regular
Participante Regular


Voltar ao Topo Ir em baixo

Ver o tópico anterior Ver o tópico seguinte Voltar ao Topo


 
Permissão deste fórum:
Você não pode responder aos tópicos neste fórum