Ir para conteúdo
Fórum Script Brasil
  • 0

consulta para colocar ordem numerica


Js.ane

Pergunta

Olá, estou tentando criar uma consulta para que na coluna Ranking apareça a posição de venda de um produto. Esta posição tem que estar baseada sobre o total de vendas dos produtos que mais saem.

Ranking | Produto | total vendido

1 | Lápis | 36

2 | Borracha | 28

2 | Caderno | 28

4 | Pasta | 15

Repare que se houver empate o produto fica com a mesma colocação do anterior.

Link para o comentário
Compartilhar em outros sites

5 respostass a esta questão

Posts Recomendados

  • 0

para isso basta que você ordene pelo campo que contem a informa de rank

select seuCampoProduto, seuCampoRanking FROM suaTabela order by seuCampoRanking desc;

Isso deve resover, pois os produtos estarão ordenados pelo ranking decrescente.

Link para o comentário
Compartilhar em outros sites

  • 0

Obrigada,

mas foi proposto para que o campo ranking seja criado pela consulta.

Será que existe uma variavel que eu possa utilizar via SQL para colocar o ranking

de acordo com o numero da linha. E se possivel mandar comparar valores, pois

sendo iguais serão representados pelo numero da linha superior.

Link para o comentário
Compartilhar em outros sites

  • 0

Tente assim:

1 - Crie uma função

Function Ordem(NDado) As Long

'criada por Alexandre Neves

'em 2010-01-16

'para Js.ane

'do fórum ScriptBrasil

If IsNull(NDado) Then

NOrdem = 0

Exit Function

End If

NOrdem = NOrdem + 1

Ordem = NOrdem

End Function

2 - Utilize o código SQL

SELECT Ordem(Produto) as Ranking, Produto, [total vendido] ... ORDER BY [Total vendido];

Link para o comentário
Compartilhar em outros sites

  • 0

Obrigado pela ajuda,

bem olhem o que eu consegui montar atraves do MSDN da Microsoft http://msdn.microsoft.com/pt-br/library/default.aspx:

SELECT vendas.Produto, [vendas]![Vendas Anrdrea]+[vendas]![VendasMarcelo] AS Expr1,

RANK()OVER(ORDER BY [vendas]![Vendas Anrdrea]+[vendas]![VendasMarcelo] DESC) AS Rank,

FROM vendas

ORDER BY [vendas]![Vendas Anrdrea]+[vendas]![VendasMarcelo] DESC;

e propriamente o que você me sugeriu, mas aparece o seguinte erro:

Erro de sintaxe (operador faltando) na expressão de consulta 'RANK()OVER(ORDER BY[vendas]![VendasAndrea]+[vendas]![VendasMarcelo]DESC)'

Editado por Js.ane
Link para o comentário
Compartilhar em outros sites

Participe da discussão

Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152,2k
    • Posts
      651,9k
×
×
  • Criar Novo...