sql >> Database teknologi >  >> RDS >> Sqlserver

SQL Server:Forskellen mellem PARTITION BY og GROUP BY

De bruges forskellige steder. group by ændrer hele forespørgslen, f.eks.:

select customerId, count(*) as orderCount
from Orders
group by customerId

Men partition by virker bare på en vinduesfunktion, såsom row_number :

select row_number() over (partition by customerId order by orderId)
    as OrderNumberForThisCustomer
from Orders

En group by reducerer normalt antallet af returnerede rækker ved at rulle dem op og beregne gennemsnit eller summer for hver række. partition by påvirker ikke antallet af returnerede rækker, men det ændrer, hvordan en vinduesfunktions resultat beregnes.



  1. Hvordan gendanner man en enkelt tabel fra en .sql postgresql backup?

  2. Tjek, hvor mange postemner der er i køen i databasemail i SQL Server (T-SQL)

  3. Bestil varchar-streng som numerisk

  4. Sådan fungerer ADD_MONTHS() i MariaDB