Sqlserver
 sql >> база данни >  >> RDS >> Sqlserver

Актуализирайте с присъединяване, групиране по и имане

Вашият оригинален оператор за актуализиране има GROUP BY и HAVING, които не са разрешени в синтаксиса на оператора UPDATE. Ето връзка към синтактична диаграма:АКТУАЛИЗАЦИЯ (Transact-SQL) .

Втората ви версия има GROUP BY и HAVING като част от извлечена таблица, която е позволен.

Така че, да:имахте синтактична грешка.

Между другото, съгласен съм с @bluefeet:CTE вместо производна таблица ще направи вашата актуализация по-лесна за четене и разбиране. Малко нещо, но може да направи голяма разлика в лесната поддръжка.




  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. SqlException (0x80131904):Невалидно име на обект 'dbo.Categories'

  2. Как да решим Изявлението не върна грешка в набор от резултати?

  3. Как да изпълните съхранена процедура от Laravel

  4. Транспонирайте набор от редове като колони в SQL Server 2000

  5. Групирайте последователни редове с една и съща стойност, като използвате интервали от време