Mit SELECT
SELECT @ModelID = m.modelid
FROM MODELS m
WHERE m.areaid = 'South Coast'
Mit SET
SET @ModelID = (SELECT m.modelid
FROM MODELS m
WHERE m.areaid = 'South Coast')
Siehe diese Frage für den Unterschied zwischen der Verwendung von SELECT und SET in TSQL.
Warnung
Wenn diese SELECT
-Anweisung gibt mehrere Werte zurück (anfangs schlecht):
- Bei Verwendung von
SELECT
, wird der Variablen der zuletzt zurückgegebene Wert zugewiesen (wie womp sagte), ohne Fehler oder Warnung (dies kann Logikfehler verursachen) - Bei Verwendung von
SET
, tritt ein Fehler auf