1
resposta

Resolvendo o exercício de uma forma diferente

DECLARE @DATAINICIAL DATE
DECLARE @DATAFINAL DATE
SET @DATAINICIAL = '20170101'
SET @DATAFINAL = '20170110'

WHILE @DATAINICIAL <= @DATAFINAL
BEGIN
    SELECT DATA, COUNT(*) AS 'QUANTIDADE NOTAS' FROM [dbo].[NOTAS FISCAIS]
    WHERE DATA BETWEEN @DATAINICIAL AND @DATAFINAL
    GROUP BY DATA ORDER BY DATA
    BREAK
END
1 resposta

Olá Pablo, tudo bem?

Parabéns Pablo, a sua query funcionou direitinho e achei bem legal a forma como você exibiu o resultado, vou deixar aqui para você uma outra forma de resolver está atividade:

DECLARE @DATAINICIAL DATE
DECLARE @DATAFINAL DATE
DECLARE @NUMNOTAS INT
SET @DATAINICIAL = '20170101'
SET @DATAFINAL = '20170110'
WHILE @DATAINICIAL <= @DATAFINAL
BEGIN
    SELECT @NUMNOTAS = COUNT(*) FROM [NOTAS FISCAIS] 
        WHERE DATA = @DATAINICIAL
    PRINT CONVERT(VARCHAR(10), @DATAINICIAL) + ' --> ' 
        + CONVERT(VARCHAR(10), @NUMNOTAS)
    SELECT @DATAINICIAL = DATEADD(DAY, 1, @DATAINICIAL)
END

Foi bem legal você ter compartilhado aqui no fórum a sua resposta para a atividade Pablo :).

Continue assim, qualquer dúvida é só falar e bons estudos!