Ir para conteúdo
Seja Membro VIP - Remova Banners de Propagandas, Tenha Liberado Qualquer Download, Além de Acessos em Áreas Exclusivas!! ×
Quer acesso a todas as Áreas do Fórum, até aquelas só para membros VIPs? Também quer poder baixar qualquer ARQUIVO? ×

Colocar Nomes Do Meses Conforme Dados Informado Nos Parametros


flaviocosta

Posts Recomendados


  • Tópicos Que Criei:  5
  • Tópicos/Dia:  0.00
  • Meu Conteúdo:  17
  • Conteúdo/Dia:  0.00
  • Reputação:   0
  • Pontos/Conquistas:  135
  • Conteúdo Resolvido:  0
  • Dias Ganho:  0
  • Status:  Offline

Boa tarde a todos!

Criei uma consulta para retornar algumas informações dentro de um período colocados nos parâmetros de Data_Inicial_D e Data_Final_D conforme a sentença abaixo.

Gostaria de colocar o nome do mês conforme o periodo que eu digitasse nos parametros, por exemplo:

Data_Inicial_D = 01/11/2013

Data_Final_D = 30/11/2013

E no resultado do relatório me traria o mês de Novembro...

SELECT

SUM(TITMMOVRATCCU.VALOR)VALOR,
TPRODUTODEF.CODTBORCAMENTO
FROM TMOV
JOIN TITMMOV ON (TMOV.CODCOLIGADA = TITMMOV.CODCOLIGADA AND TMOV.IDMOV = TITMMOV.IDMOV)
JOIN TITMMOVRATCCU ON (TITMMOV.CODCOLIGADA = TITMMOVRATCCU.CODCOLIGADA AND TITMMOV.IDMOV = TITMMOVRATCCU.IDMOV AND TITMMOV.NSEQITMMOV = TITMMOVRATCCU.NSEQITMMOV)
JOIN TPRODUTODEF ON (TITMMOV.IDPRD = TPRODUTODEF.IDPRD)
AND TMOV.DATAEMISSAO >= :Data_Inicial_D
AND TMOV.DATAEMISSAO <= :Data_Final_D
AND TPRODUTODEF.CODTBORCAMENTO = :CODTBORCAMENTO
GROUP BY TPRODUTODEF.CODTBORCAMENTO
Obrigado.
Link para comentar
Compartilhar em outros sites


  • Tópicos Que Criei:  58
  • Tópicos/Dia:  0.01
  • Meu Conteúdo:  672
  • Conteúdo/Dia:  0.10
  • Reputação:   25
  • Pontos/Conquistas:  4.005
  • Conteúdo Resolvido:  0
  • Dias Ganho:  18
  • Status:  Offline
  • Idade:  48

Olá amigo

Você pode utilizar p comando Converte no campo data de sua consulta SQL

http://msdn.microsoft.com/pt-br/library/ms187928.aspx

:victory:

Link para comentar
Compartilhar em outros sites


  • Tópicos Que Criei:  58
  • Tópicos/Dia:  0.01
  • Meu Conteúdo:  672
  • Conteúdo/Dia:  0.10
  • Reputação:   25
  • Pontos/Conquistas:  4.005
  • Conteúdo Resolvido:  0
  • Dias Ganho:  18
  • Status:  Offline
  • Idade:  48

Olá Flávio

Outra coisa que você pode fazer é utilizar DATEPART com CASE.

PS.: Estou dando essas dicas com base no que você pediu, ou que pelo menos entedi em sua pergunta...

:victory:

 
SELECT
 CASE DATEPART(MONTH,TMOV.DATAEMISSAO)
  WHEN 1 THEN 'JANEIRO'
  WHEN 2 THEN 'FEVEREIRO'
  WHEN 3 THEN 'MARÇO'
  WHEN 4 THEN 'ABRIL'
  WHEN 5 THEN 'MAIO'
  WHEN 6 THEN 'JUNHO'
  WHEN 7 THEN 'JULHO'
  WHEN 8 THEN 'AGOSTO'
  WHEN 9 THEN 'SETEMBRO'
  WHEN 10 THEN 'OUTRUBRO'
  WHEN 11 THEN 'NOVEMBRO'
  WHEN 12 THEN 'DEZEMBRO'
 END,
 SUM(TITMMOVRATCCU.VALOR)VALOR,
 TPRODUTODEF.CODTBORCAMENTO

FROM
 TMOV (NOLOCK)
 INNER JOIN TITMMOV (NOLOCK)
  ON
  TMOV.CODCOLIGADA = TITMMOV.CODCOLIGADA AND
  TMOV.IDMOV =  TITMMOV.IDMOV
 INNER JOIN TITMMOVRATCCU (NOLOCK)
  ON
  TITMMOV.CODCOLIGADA = TITMMOVRATCCU.CODCOLIGADA AND
  TITMMOV.IDMOV = TITMMOVRATCCU.IDMOV AND
  TITMMOV.NSEQITMMOV = TITMMOVRATCCU.NSEQITMMOV
 INNER JOIN TPRODUTODEF (NOLOCK)
  ON
  TITMMOV.CODCOLIGADA = TPRODUTODEF.CODCOLIGADA AND
  TITMMOV.IDPRD = TPRODUTODEF.IDPRD

WHERE  
 TMOV.DATAEMISSAO >= :Data_Inicial_D AND
 TMOV.DATAEMISSAO <= :Data_Final_D AND
 TPRODUTODEF.CODTBORCAMENTO = :CODTBORCAMENTO

GROUP BY
 CASE DATEPART(MONTH,TMOV.DATAEMISSAO)
  WHEN 1 THEN 'JANEIRO'
  WHEN 2 THEN 'FEVEREIRO'
  WHEN 3 THEN 'MARÇO'
  WHEN 4 THEN 'ABRIL'
  WHEN 5 THEN 'MAIO'
  WHEN 6 THEN 'JUNHO'
  WHEN 7 THEN 'JULHO'
  WHEN 8 THEN 'AGOSTO'
  WHEN 9 THEN 'SETEMBRO'
  WHEN 10 THEN 'OUTRUBRO'
  WHEN 11 THEN 'NOVEMBRO'
  WHEN 12 THEN 'DEZEMBRO'
 END,
 TPRODUTODEF.CODTBORCAMENTO
 
Editado por Robinson
Link para comentar
Compartilhar em outros sites


  • Tópicos Que Criei:  5
  • Tópicos/Dia:  0.00
  • Meu Conteúdo:  17
  • Conteúdo/Dia:  0.00
  • Reputação:   0
  • Pontos/Conquistas:  135
  • Conteúdo Resolvido:  0
  • Dias Ganho:  0
  • Status:  Offline

Bom dia Robinson!!!

Muito obrigado pela ajuda, matou o meu problema.... 100%

Valeu.

Podemos dar como RESOLVIDO esse tópico!

Link para comentar
Compartilhar em outros sites


  • Tópicos Que Criei:  27
  • Tópicos/Dia:  0.00
  • Meu Conteúdo:  147
  • Conteúdo/Dia:  0.02
  • Reputação:   5
  • Pontos/Conquistas:  1.023
  • Conteúdo Resolvido:  0
  • Dias Ganho:  5
  • Status:  Offline
  • Idade:  46

Vc tb pode substituir o case pelo comando DATENAME (MM, DATAEMISSAO)..

[ ]´s

Link para comentar
Compartilhar em outros sites


  • Tópicos Que Criei:  58
  • Tópicos/Dia:  0.01
  • Meu Conteúdo:  672
  • Conteúdo/Dia:  0.10
  • Reputação:   25
  • Pontos/Conquistas:  4.005
  • Conteúdo Resolvido:  0
  • Dias Ganho:  18
  • Status:  Offline
  • Idade:  48

Boa Ronieri

Bem lembrado.

Esse também é um ótimo comando.

Só não sei se tem como deixá-lo em português se o idioma padrão do SQL Server for Inglês, como no meu caso.

Você sabe?

SELECT DATENAME (MM, GETDATE())
 
Retorna = November
 

:victory:

Vc tb pode substituir o case pelo comando DATENAME (MM, DATAEMISSAO)..

[ ]´s

Link para comentar
Compartilhar em outros sites


  • Tópicos Que Criei:  58
  • Tópicos/Dia:  0.01
  • Meu Conteúdo:  672
  • Conteúdo/Dia:  0.10
  • Reputação:   25
  • Pontos/Conquistas:  4.005
  • Conteúdo Resolvido:  0
  • Dias Ganho:  18
  • Status:  Offline
  • Idade:  48

Olá Ronieri

Eu mesmo já encontrei a resposta para a minha pergunta

SET LANGUAGE 'Brazilian'
SELECT DATENAME (MM, GETDATE())
 
RETORNA = Novembro

Valeu

:victory:

Link para comentar
Compartilhar em outros sites


  • Tópicos Que Criei:  27
  • Tópicos/Dia:  0.00
  • Meu Conteúdo:  147
  • Conteúdo/Dia:  0.02
  • Reputação:   5
  • Pontos/Conquistas:  1.023
  • Conteúdo Resolvido:  0
  • Dias Ganho:  5
  • Status:  Offline
  • Idade:  46

Boa Ronieri

Bem lembrado.

Esse também é um ótimo comando.

Só não sei se tem como deixá-lo em português se o idioma padrão do SQL Server for Inglês, como no meu caso.

Você sabe?

SELECT DATENAME (MM, GETDATE())
 
Retorna = November
 

:victory:

Só "setar" antes a linguagem..

SET LANGUAGE PORTUGUESE

SELECT DATENAME (MM, GETDATE())

Link para comentar
Compartilhar em outros sites

Participe da conversa

Você pode postar agora, e se registrar mais tarde. Se você tiver uma conta, faça o login agora para postar com sua conta.

Visitante
Responder esse tópico

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

  Only 75 emoji are allowed.

×   Seu link foi automaticamente inserido no corpo do post.   Exibir como um link

×   Seu conteúdo anterior foi restaurado.   Limpar conteúdo do editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Criar Novo...

Informação Importante

Usando este site, você concorda com nossos Termos de Uso e nossa Política de Privacidade.