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

Proč nemohu provést agregační funkci na výrazu obsahujícím agregaci, ale mohu tak učinit vytvořením nového příkazu select kolem něj?

SUM() ve vašem příkladu je neoperativní - SUM() z COUNT() znamená totéž jako jen COUNT(). Zdá se tedy, že žádný z vašich příkladů dotazů nedělá nic užitečného.

Zdá se mi, že vnoření agregací by mělo smysl pouze v případě, že byste chtěli použít dvě různé agregace – tedy GROUP BY na různé sady sloupců. Chcete-li zadat dvě různé agregace, budete muset použít funkci GROUPING SETS nebo funkci SUM() OVER. Možná, že když vysvětlíte, čeho chcete dosáhnout, někdo by vám mohl ukázat jak.



  1. Přiřaďte výsledek dynamického sql proměnné

  2. Kurz SQL Server – Vše, co potřebujete k zvládnutí Transact-SQL

  3. Nelze nainstalovat pg gem v Mavericks s Postgres.app

  4. Jednotky data a času v MySQL (úplný seznam)