none
Vendas de todos os meses por ano - sql server RRS feed

  • Pergunta

  • Bom dia estou tentando fazer um select de todas as minha venda por anos

    ou seja preciso q a consultar retorne

    por ex:

    Janeiro   Fevereiro   Março      Abril       Maio       Junho     Julho      Agosto   Setembro   Novembro   Dezembro

    100,00   200,00       120,00    145,00   250,00   435,00   500,00   600,00    200,00        784,14       1.000,00

    -------------------------------------------------------------------------------------------------------------------------------------------

    nome da tabela é tabvend nome dos campos data_ems,valor etc...

    algum pode mim ajudar der já agradeço pela atenção.


    sexta-feira, 21 de agosto de 2015 14:06

Respostas

Todas as Respostas

  • Bom dia,

    Nesse caso da para fazer várias coisas legais, e que resolveram seu problema, por exemplo criar CTE.

    WITH VENDAS (MES1, MES2)
    AS
    (
        SELECT SUM(VALORTOTAL) AS MES1 FROM SUATABELA WHERE DATAVENDA BETWEEN '01-01-2015' AND '31-01-2015'
        UNION all
        SELECT SUM(VALORTOTAL) AS MES2 FROM SUATABELA WHERE DATAVENDA BETWEEN '01-02-2015' AND '28-02-2015'
    )
    SELECT MES1, v.MES2 FROM VENDAS v

    Nessa CTE você pode colocar em uma função ou procedure e passar o ano por parâmetro, agora só usar imaginação.

    Também da para utilizar PIVOT.


    Atenciosamente, Ruberlei. www.t-sql.com.br



    • Editado Ruberlei sexta-feira, 21 de agosto de 2015 14:38 melhoria
    sexta-feira, 21 de agosto de 2015 14:36
  • Mim deu um erro

    Mensagem 8159, Nível 16, Estado 1, Linha 2
    'VENDAS' tem menos colunas do que o especificado na lista de colunas.
    

    sexta-feira, 21 de agosto de 2015 15:12
  • Boa tarde,

    Coloca o fonte para analisarmos.

    Mais verifique no trecho 'WITH VENDAS (MES1, MES2)' se quantidade de colunas está de acordo com seu select.


    Atenciosamente, Ruberlei. www.t-sql.com.br

    sexta-feira, 21 de agosto de 2015 17:38
  • Deleted
    • Marcado como Resposta Marcos SJ sexta-feira, 21 de agosto de 2015 19:20
    sexta-feira, 21 de agosto de 2015 17:45