sql >> Databasteknik >  >> RDS >> Sqlserver

Uppdatera med en gå med, gruppera efter och ha

Din ursprungliga uppdateringssats har GROUP BY och HAVING, som inte är tillåtna i UPDATE-satsens syntax. Här är en länk till ett syntaxdiagram:UPPDATERING (Transact-SQL) .

Din andra version har GROUP BY och HAVING som en del av en härledd tabell, som är tillåten.

Så, ja:du hade ett syntaxfel.

För övrigt håller jag med @bluefeet:en CTE i stället för en härledd tabell skulle göra din uppdatering lättare att läsa och förstå. En liten sak, men det kan göra stor skillnad i underhållsvänligheten.




  1. Firebird till MySQL-frågemigrering - Välj Inner Join Subquery

  2. Postgres UPPDATERING med BESTÄLLNING AV, hur gör man?

  3. Kan jag använda en ström för att INFOGA eller UPPDATERA en rad i SQL Server (C#)?

  4. Databasdesign:hur stödjer man en flerspråkig webbplats?