none
Month retirar mes RRS feed

  • Pergunta

  • Olá pessoal

    Tenho uma view que traz o seguinte resultado:

    Nota      qtddias     Mês

    233231     54             Abril

    234215    34             Maio

    234220    32             Junho

    234223    26             Julho

    Eu precisava montar um select com o month para trazer apenas os registros do mes atual, como eu posso fazer isso?

    Tentei fazer com month(Mês), mas pede para converter.

    terça-feira, 26 de junho de 2012 19:57

Respostas

Todas as Respostas

  • Patricia,

    O problema acontece por que MONTH ira te retornar um inteiro, enquanto voce esta comparando com o mes literal para solucionar isso:

    SELECT *
    FROM Tabela
    WHERE Mes =
    CASE Mes
    WHEN 'Janeiro' THEN 1
    WHEN 'Fevereiro' THEN 2
    WHEN 'Marco' THEN 3
    WHEN 'Abril' THEN 4
    WHEN 'Maio' THEN 5
    WHEN 'JKunho' THEN 6
    WHEN 'Julho' THEN 7
    WHEN 'Agosto' THEN 8
    WHEN 'Setembro' THEN 9
    WHEN 'Outubro' THEN 10
    WHEN 'Novembro' THEN 11
    ELSE 'dezembro' End

    Cuidado pois a performance sera muito, muito ruim....


    Fabrizzio A. Caputo
    MCT
    Certificações:
    Oracle OCA 11g
    MCITP SQL Server 2008 Implementation and Maintenance
    MCITP SQL Server 2008 Developer
    Blog Pessoal: www.fabrizziocaputo.wordpress.com
    Blog Empresa: www.tripletech.com.br/blog
    Twitter: @FabrizzioCaputo
    Email: fabrizzio.antoniaci@gmail.com


    terça-feira, 26 de junho de 2012 20:05
    Moderador
  • Olá Patricia,

    Acredito que você poderia fazer assim

    SET LANGUAGE 'Brazilian'
    
    Select * from SUAVIEW
    WHERE [Mês] = DATENAME(MONTH,getdate())


    Att.
    Lukas Baldan


    terça-feira, 26 de junho de 2012 20:07