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

Jak vypočítat procento pomocí příkazu SQL

  1. Nejúčinnější (pomocí over()).

    select Grade, count(*) * 100.0 / sum(count(*)) over()
    from MyTable
    group by Grade
    
  2. Universal (jakákoli verze SQL).

    select Grade, count(*) * 100.0 / (select count(*) from MyTable)
    from MyTable
    group by Grade;
    
  3. S CTE, nejméně efektivní.

    with t(Grade, GradeCount) 
    as 
    ( 
        select Grade, count(*) 
        from MyTable
        group by Grade
    )
    select Grade, GradeCount * 100.0/(select sum(GradeCount) from t)
    from t;
    


  1. CREATE TABLE MySQL vs T-SQL s příklady syntaxe

  2. Jak vytvořit kontingenční tabulku v PostgreSQL

  3. Stažení výpisu MySQL z příkazového řádku

  4. LEFT() vs SET TEXTSIZE v SQL Server:Jaký je rozdíl?