1
resposta

Outro método para formação monetária

Resolvi o exercício aplicando outro conceito que encontrei numa pesquisa rápida que achei interessante compartilhar ;)

-- 06.04 - Vendas percentuais por tamanho --
-- CTA = CONSULTA DO TOTAL ANUAL | CTM = CONSULTA DO TOTAL MENSAL
SELECT 
    CTM.TAMANHO
    ,CTM.ANO
    ,FORMAT(CTM.FATURAMENTO,'c') AS FATURAMENTO -- c de currency = valor monetário em nvarchar
    ,REPLACE(CONVERT(VARCHAR,CONVERT(DECIMAL(15,2),(CTM.FATURAMENTO / CTA.[TOTAL FATURAMENTO]) * 100)),'.',',') + ' %' AS 'PERCENTUAL ANUAL'
FROM(
    SELECT 
        TP.TAMANHO
        ,YEAR(NF.[DATA]) AS ANO
        ,SUM(INF.QUANTIDADE * INF.PREÇO) AS FATURAMENTO
    FROM [TABELA DE PRODUTOS] TP
        INNER JOIN [ITENS NOTAS FISCAIS] INF ON TP.[CODIGO DO PRODUTO] = INF.[CODIGO DO PRODUTO]
        INNER JOIN [NOTAS FISCAIS] NF ON NF.NUMERO = INF.NUMERO
    WHERE YEAR(NF.[DATA]) = 2016
    GROUP BY TP.TAMANHO, YEAR(NF.[DATA])) CTM
    INNER JOIN(
        SELECT 
            YEAR(NF.[DATA]) AS ANO
            ,SUM(INF.QUANTIDADE * INF.PREÇO) AS 'TOTAL FATURAMENTO'
        FROM [ITENS NOTAS FISCAIS] INF 
            INNER JOIN [NOTAS FISCAIS] NF ON INF.NUMERO = NF.NUMERO 
        WHERE YEAR(NF.[DATA]) = 2016
        GROUP BY YEAR(NF.[DATA])) CTA ON CTM.ANO = CTA.ANO
ORDER BY CTM.FATURAMENTO DESC
1 resposta

Olá Lucas, tudo bem?

Parabéns Lucas, a sua query ficou muito legal, e achei muito interessante você ter utilizado uma forma diferente para exibir o valor monetário.

Foi muito legal você ter compartilhado a sua resposta da atividade aqui com a gente, você está indo muito bem Lucas :)

Continue assim e bons estudos!