1
resposta

RESOLUÇÃO + RESPOSTA PARA ALINE

A resposta que eu encontrei segue abaixo e não tem while por que foi mais simples fazer um insert com select uma vez só:

DECLARE @TABELANOTAS TABLE ([DATA] DATE, [NUMNOTAS] INT)

DECLARE @DATAINICIAL DATE
DECLARE @DATAFINAL DATE
DECLARE @NUMNOTAS INT

    INSERT INTO 
        @TABELANOTAS ([DATA], [NUMNOTAS]) 
    SELECT 
        [DATA],DBO.[NOTAS_NA_DATA]([DATA])
    FROM
        [NOTAS FISCAIS]
    GROUP BY
        [DATA]

SELECT * FROM @TABELANOTAS

Aline, ambos os comandos funcionam e darão o mesmo resultado. quando você tiver dúvida, você sempre pode testar desse jeito aqui:

DECLARE @TESTE DATE
SET @TESTE = '1900-01-01'
SELECT @TESTE = DATEADD(DAY, 1, @TESTE)
SELECT @TESTE


DECLARE @TESTE1 DATE
SET @TESTE1 = '1900-01-01'
SET @TESTE1 = DATEADD(DAY, 1, @TESTE1)
SELECT @TESTE1

E verificar o funcionamento da função nesse caso.

1 resposta

Olá Lucas,

desculpe por demorar a te responder.

Obrigado por compartilhar sua resposta para a pergunta da Aline! Nossa comunidade cresce muito com essa colaboração entre os estudantes.

Para quem está aprendendo SQL, é importante entender como funciona cada comando e qual é a melhor forma de utilizá-los em cada situação. O seu exemplo de teste é uma ótima dica para quem quer testar o funcionamento de funções e comandos.

Forte abraço.

Quer mergulhar em tecnologia e aprendizagem?

Receba a newsletter que o nosso CEO escreve pessoalmente, com insights do mercado de trabalho, ciência e desenvolvimento de software