SQL-Werte zurückgeben und variables gleichzeitig setzen

In einer gespeicherten SQL server-Prozedur rufe ich data ab und setze variables gleichzeitig ein. Können wir das zur selben time machen oder wir müssen zwei verschiedene select-statementen schreiben?

SELECT username, firstname, lastname, phone FROM userTable SELECT @username = username, @firstname = firstname, @lastname = lastname, @phone = phone FROM userTable 

Nein, kann nicht variablen Zuordnung und Ausgabe in der gleichen statement. Aber du kannst es vermeiden, den Tisch zweimal zu durchlaufen, wenn du zuerst variables zuweist und dann ihre Werte auswählst:

 SELECT @username=username, @firstname=firstname, @lastname=lastname, @phone=phone FROM userTable SELECT @username username, @firstname firstname, @lastname lastname, @phone phone 

Sie können einfach die Variable in der select-statement verwenden, um die aus der Select-statement abgerufenen Werte zu speichern.

 DECLARE @username varchar(max); DECLARE @firstname varchar(max); DECLARE @lastname varchar(max); DECLARE @phone varchar(max); SELECT @username=username, @firstname=firstname, @lastname=lastname, @phone=phone FROM userTable