Ir para o conteúdo
pedroveracruz

obter apenas os 10 maiores registos no access

Mensagens Recomendadas

pedroveracruz    0
pedroveracruz

Olá a todos,

preciso mesmo de ajuda.  Sou um principiante no access e tenho andado a tentar fazer alguns querys lá na empresa.

O meu problema é o seguinte.

tenho uma tabela com os vendedores, 1 coluna, os cliente de cada vendedor 2º coluna, e o valor de vendas de cada Cliente na 3ª coluna.

quero montar um query que apenas me de os 5 maiores clinetes de cada vendedor, mas não encontro nenhuma formula que ajude o meu problema.

tenho 85 vendedores, e quero ter este query automático para correr todas as semanas,

o que quero obter era algo do genero

|vendedor|Cliente  |vendas|ranking

| joão      |loja A  |15.000|1

| joão      |loja b  |14.000 |2

| joão      |loja c  |13.000 |3

| joão      |loja d  |12.000 |4

| joão      |loja e  |11.000 |5

| maria    |loja a  |15.000 |1

| maria    |loja b  |14.000 |2

| maria    |loja c  |13.000 |3

| maria    |loja d  |12.000 |4

| maria    |loja e  |11.000 |5

os vendedores nunca têm o mesmo Cliente

Obrigado a todos os que me possam ajudar.

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites
bruno1234    20
bruno1234

Tens aqui um Top 3 de exemplo:


SELECT t.*
FROM Tabela1 t
WHERE (Select count(*) from Tabela1 
WHERE t.Nome = Nome and t.Vendas < Vendas) < 3

Para por a coluna ranking é um bocado complicado para a utilidade q tem (Complicado em Access, em SQL Server é na boa com o Rank() ou Row Number()).

Mas em Access com uma abordagem através do count(*) com condições seria possivel chegar lá.

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites
pedroveracruz    0
pedroveracruz

Tens aqui um Top 3 de exemplo:


SELECT t.*
FROM Tabela1 t
WHERE (Select count(*) from Tabela1 
WHERE t.Nome = Nome and t.Vendas < Vendas) < 3

Para por a coluna ranking é um bocado complicado para a utilidade q tem (Complicado em Access, em SQL Server é na boa com o Rank() ou Row Number()).

Mas em Access com uma abordagem através do count(*) com condições seria possivel chegar lá.

Tentei passar o SQL para o Access mas não funciona:(

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites
pedroveracruz    0
pedroveracruz

Eu testei com uma tabela em Access e funcionou.

Aliás, fiz a query no Access.

Podes enviar-me a query? assim carregava só os dados.

Ob.

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Crie uma conta ou ligue-se para comentar

Só membros podem comentar

Criar nova conta

Registe para ter uma conta na nossa comunidade. É fácil!

Registar nova conta

Entra

Já tem conta? Inicie sessão aqui.

Entrar Agora


×

Aviso Sobre Cookies

Ao usar este site você aceita os nossos Termos de Uso e Política de Privacidade