sql >> Databáze >  >> RDS >> Sqlserver

Jak nastavit proměnnou z SQL dotazu?

Pomocí SELECT

SELECT @ModelID = m.modelid 
  FROM MODELS m
 WHERE m.areaid = 'South Coast'

Pomocí SET

SET @ModelID = (SELECT m.modelid 
                  FROM MODELS m
                 WHERE m.areaid = 'South Coast')

Podívejte se na tuto otázku pro rozdíl mezi použitím SELECT a SET v TSQL.

Upozornění

Pokud toto SELECT příkaz vrátí více hodnot (špatné na začátek):

  • Při použití SELECT , proměnné je přiřazena poslední hodnota, která je vrácena (jak řekl womp), bez jakékoli chyby nebo varování (to může způsobit logické chyby)
  • Při použití SET , dojde k chybě


  1. Entity framework se velmi pomalu načítá poprvé po každé kompilaci

  2. SQL Server 2016

  3. LEN() vs DATALENGTH() na serveru SQL

  4. Jak mohu v MySQL provést „vložit, pokud neexistuje“?