Sqlserver
 sql >> Cơ Sở Dữ Liệu >  >> RDS >> Sqlserver

Cách tính tỷ lệ phần trăm bằng câu lệnh SQL

  1. Hiệu quả nhất (sử dụng over ()).

    select Grade, count(*) * 100.0 / sum(count(*)) over()
    from MyTable
    group by Grade
    
  2. Universal (bất kỳ phiên bản SQL nào).

    select Grade, count(*) * 100.0 / (select count(*) from MyTable)
    from MyTable
    group by Grade;
    
  3. Với CTE, hiệu quả thấp nhất.

    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. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. OBJECTPROPERTY () so với OBJECTPROPERTYEX () trong SQL Server:Sự khác biệt là gì?

  2. Tôi có thể sử dụng nhiều con trỏ trên một kết nối với pyodbc và MS SQL Server không?

  3. Cách tìm cài đặt ANSI_NULLS của cơ sở dữ liệu trong SQL Server (T-SQL)

  4. Cách thêm khóa chính vào bảng hiện có trong SQL Server (ví dụ T-SQL)

  5. Sử dụng NEWID () để tạo giá trị duy nhất trong SQL Server