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

Načtení prvních 10 řádků a sečtení všech ostatních v řádku 11

Neuvedli jste, jak hodnotíte prvních 10, takže předpokládám, že nejvyšší počty jsou umístěny výše?

With TopItems As
    (
    SELECT C.CountryID AS CountryID
            , C.CountryName AS Country
            , Count(FirstName) AS Origin
            , ROW_NUMBER() OVER( ORDER BY Count(FirstName) DESC ) As Num
    FROM Users AS U
        JOIN Country AS C 
            ON C.CountryID = U.CountryOfOrgin
    GROUP BY C.CountryName, C.CountryID
    )
Select CountryId, Country, Origin
From TopItems
Where Num <= 10
Union ALL
Select 0, 'Others', Sum(Origin)
From TopItems
Where Num > 10


  1. Exportujte celou databázi SQLite do souboru SQL

  2. Najděte chybějící data pomocí SQL

  3. MySQL - Nahradit znak ve sloupcích

  4. Jak nastavit časovač pro volání funkce každých n minut?