none
Consulta de Venda de Ingressos RRS feed

  • 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
    sexta-feira, 16 de novembro de 2018 19:31

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

    sexta-feira, 16 de novembro de 2018 19:43

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

    sexta-feira, 16 de novembro de 2018 19:43
  • 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.

    sábado, 17 de novembro de 2018 19:39
  • Terá a data

    WHERE DATVENDA = PARAMETRO_INFORMADO

    sábado, 17 de novembro de 2018 23:39