1
resposta

[Dúvida] Dúvida: Como eu poderia tornar o valor exibido no padrão monetário (R$)?

Olá pessoal!

Por favor, alguém poderia me ajudar a entender como eu poderia exibir o resultado do faturamento por cliente no padrão monetário (ex.: R$ 00.000,00)?

Tentei utilizar a função FORMAT(), mas não obtive sucesso.

SELECT C.NOME, YEAR(NF.DATA) AS ANO, 
'O cliente ' + [NOME] + ' faturou '+ CONVERT(VARCHAR, CONVERT(decimal(15,2), SUM(QUANTIDADE * PREÇO)))  + ' no ano de 2016' AS RESULTADO
FROM [dbo].[TABELA DE CLIENTES] AS C
INNER JOIN [dbo].[NOTAS FISCAIS] AS NF
ON NF.CPF = C.CPF
INNER JOIN [dbo].[ITENS NOTAS FISCAIS] AS INF
ON NF.NUMERO = INF.NUMERO
WHERE YEAR(NF.DATA) = 2016
GROUP BY YEAR(NF.DATA), C.NOME
1 resposta

Oi, Yolanda!! Tudo bem?

Desde já, peço desculpas pela demora em te responder.

Você estava no caminho certo! Para formatar o faturamento do cliente de maneira a deixá-lo no padrão monetário, podemos utilizar a função FORMAT(), observe o código abaixo:

FORMAT(SUM(QUANTIDADE * PREÇO), 'C', 'pt-BR')

Note que, após escrever o nome da função, indicamos três parâmetros:

  1. O valor a ser formatado — que, neste caso, é a soma da multiplicação entre QUANTIDADE e PREÇO;

  2. A letra 'C', que vem da palavra Currency (Moeda) e se refere à máscara que será aplicada ao valor passado;

  3. E qual será o padrão da moeda, indicado por 'pt-BR' (formato brasileiro).

Dessa forma, todos os faturamentos terão o padrão monetário, iniciando com R$ e sendo finalizados com duas casas decimais separadas por vírgula (representando os centavos).

Caso queira ver como ficou o seu SELECT após a mudança que fizemos, aqui está:

SELECT C.NOME, YEAR(NF.DATA) AS ANO, 
'O cliente ' + [NOME] + ' faturou '+ FORMAT(SUM(QUANTIDADE * PREÇO), 'C', 'pt-BR')  + ' no ano de 2016' AS RESULTADO
FROM [dbo].[TABELA DE CLIENTES] AS C
INNER JOIN [dbo].[NOTAS FISCAIS] AS NF
ON NF.CPF = C.CPF
INNER JOIN [dbo].[ITENS NOTAS FISCAIS] AS INF
ON NF.NUMERO = INF.NUMERO
WHERE YEAR(NF.DATA) = 2016
GROUP BY YEAR(NF.DATA), C.NOME

Yolanda, espero ter ajudado! Caso surjam novas dúvidas, fico à disposição para ajudar.

Abraços!

Caso este post tenha lhe ajudado, por favor, marcar como solucionado ✓. Bons Estudos!