1
resposta

Resposta do Exercício e duas dúvidas

Deixo aqui a minha resposta antes de ter visto a solução do exercício:

declare @Notas int
select @Notas = count(*)   from [NOTAS FISCAIS] where DATA = '2015-01-01'
print @Notas

if @Notas >70 

    print 'Há muitas notas'  
else
    print 'Há poucas notas'  

E queria deixar duas dúvidas:

  1. Porque não consegui usar dois PRINT's dentro do IF ? Exemplo:

    if @Notas >70 
     print @Notas
     print 'Há muitas notas'  
    else
     print @Notas
     print 'Há poucas notas'  

    Aqui o terminal diz ter um erro próximo ao else.

  2. É possível usar um ALLIES numa variável ? Exemplo:

    select @Notas = count(*)  as Total_Notas from [NOTAS FISCAIS] where DATA = '2015-01-01'

    Muito obrigado se puderem ajudar :D

1 resposta

Oi, Marcus! Tudo bem?

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

No primeiro caso, o erro acontece porque o SQL Server não sabe onde o primeiro PRINT termina e o segundo começa. Para resolver isso, você pode colocar os comandos BEGIN e END para delimitar o bloco de código dentro doIF, desta maneira:

if @Notas > 70 
BEGIN
    print @Notas
    print 'Há muitas notas'  
END
else
BEGIN
    print @Notas
    print 'Há poucas notas'  
END

Com relação a sua segunda dúvida: não é possível usar um ALIAS juntamente com uma variável. Por meio de uma variável, já podemos adicionar um "apelido" a determinado valor — logo, não precisamos utilizar a cláusula AS para realizar isso!

Marcus, espero ter ajudado! Se surgirem dúvidas após minha explicação ou durante os seus estudos, fico à disposição.

Um abraço.

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

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