Usuário com melhor resposta
Consulta de Venda de Ingressos

Pergunta
-
Boa Tarde!
Tenho uma tabela de venda de ingressos e gostaria de criar um select criando intervalos vendidos por atendente.
Tabela VENDA
Numero do Ingresso Atendente
1 Marcelo
2 Marcelo
3 Marcelo
4 Marcelo
5 João
6 João
7 João
8 Marcelo
9 Marcelo
10 João
E o select desse o seguinte resultado
Atendente IntervaloIni IntervaloFin
Marcelo 1 4
Marcelo 8 9
João 5 7
João 10 10
Respostas
-
Boa tarde,
Experimente fazer uns testes dessa forma para ver se é obtido o resultado esperado:
with CTE_RN as ( select Numero_do_Ingresso, Atendente, ROW_NUMBER() OVER(PARTITION BY Atendente ORDER BY Numero_do_Ingresso) as RN from VENDA ) select Atendente, MIN(Numero_do_Ingresso) as IntervaloIni, MAX(Numero_do_Ingresso) as IntervaloFim from CTE_RN group by Atendente, Numero_do_Ingresso - RN
Espero que ajude
Assinatura: http://www.imoveisemexposicao.com.br
Todas as Respostas
-
Boa tarde,
Experimente fazer uns testes dessa forma para ver se é obtido o resultado esperado:
with CTE_RN as ( select Numero_do_Ingresso, Atendente, ROW_NUMBER() OVER(PARTITION BY Atendente ORDER BY Numero_do_Ingresso) as RN from VENDA ) select Atendente, MIN(Numero_do_Ingresso) as IntervaloIni, MAX(Numero_do_Ingresso) as IntervaloFim from CTE_RN group by Atendente, Numero_do_Ingresso - RN
Espero que ajude
Assinatura: http://www.imoveisemexposicao.com.br
-
Boa tarde.
A resposta do nosso colega está correta, claro, e atende a necessidade, porém eu gostaria de saber do nosso colega que fez a pergunta se há alguma condição para que a consulta possa ser realizada, por exemplo: uma data, um tipo de produto, alguma condição, por que veja bem, se eu faço em condição, irei trazer todos os dados da tabela, e acredito que não isso acontece na maioria dos selects realizados.
-