la sostituzione della variabile in :SETVAR non funziona, perché in questo caso è solo una sostituzione di token.
Puoi simulare il comportamento che ti aspetti in questo modo:
:SETVAR GREETING "HELLO"
DECLARE @salutation VARCHAR(5) = $(GREETING);
SELECT @salutation;
Saluti.