So sánh các nhóm

Lập báo cáo trong SQL

Tyler Pernes

Learning & Development Consultant

Các loại chỉ số

  • Chỉ số khối lượng
  • Chỉ số hiệu suất
Lập báo cáo trong SQL

Chỉ số khối lượng

  • Tỉ lệ theo kích thước
Lập báo cáo trong SQL

Chỉ số khối lượng

  • Tỉ lệ theo kích thước

Lập báo cáo trong SQL

Chỉ số khối lượng

  • Tỉ lệ theo kích thước

Lập báo cáo trong SQL

Tính phần trăm trên tổng

bảng basketball_points
+----------+------------+---------+
| team_id  | player_id  | points  |
|----------|------------|---------|
| 1        | 482        | 92      |
| 1        | 165        | 47      |
| 2        | 222        | 64      |
+----------+------------+---------+
SELECT team_id, SUM(points) AS points
FROM basketball_points
GROUP BY team_id;
Lập báo cáo trong SQL

Tính phần trăm trên tổng

bảng basketball_points
+----------+------------+---------+
| team_id  | player_id  | points  |
|----------|------------|---------|
| 1        | 482        | 92      |
| 1        | 165        | 47      |
| 2        | 222        | 64      |
+----------+------------+---------+
+----------+---------+
| team_id  | points  |
|----------|---------|
| 1        | 782     |
| 2        | 625     |
| 3        | 487     |
| 4        | 398     |
+----------+---------+
Lập báo cáo trong SQL

Tính phần trăm trên tổng

Bước 1: Tính tổng

SELECT 
    team_id, 
    SUM(points) AS points
    SUM(points) OVER () AS total_points
FROM basketball_points
GROUP BY team_id;

Bước 2: Tính phần trăm trên tổng

SELECT 
    team_id, 
    SUM(points) AS points
    SUM(points) / SUM(points) OVER () AS perc_of_total
FROM basketball_points
GROUP BY team_id;
Lập báo cáo trong SQL

Tính phần trăm trên tổng

Kết quả:

+----------+---------+---------------+
| team_id  | points  | perc_of_total |
|----------|---------|---------------|
| 1        | 782     | .34           |
| 2        | 625     | .27           |
| 3        | 487     | .21           |
| 4        | 398     | .17           |
+----------+---------+---------------+
Lập báo cáo trong SQL

Tính phần trăm trên tổng

Phần trăm điểm của mỗi người chơi trong mỗi đội:

SELECT 
    player_id,
    team_id,
    SUM(points) AS points
    SUM(points) / (SUM(points) OVER (PARTITION BY team_id)) AS perc_of_team
FROM basketball_points
GROUP BY player_id, team_id;
Lập báo cáo trong SQL

Tính phần trăm trên tổng

Kết quả:

+-----------+---------+---------+--------------+
| player_id | team_id | points  | perc_of_team |
|-----------|---------|---------|--------------|
| 482       | 1       | 92      | .12          |
| 165       | 1       | 47      | .06          |
| 222       | 2       | 64      | .10          |
+-----------+---------+---------+--------------+
Lập báo cáo trong SQL

Chỉ số hiệu suất

  • Không tỉ lệ theo kích thước
  • Thường là một tỉ lệ
Lập báo cáo trong SQL

Chỉ số hiệu suất

  • Không tỉ lệ theo kích thước
  • Thường là một tỉ lệ

Lập báo cáo trong SQL

Chỉ số hiệu suất

  • Không tỉ lệ theo kích thước
  • Thường là một tỉ lệ

Lập báo cáo trong SQL

Chỉ số hiệu quả (performance index)

  • So sánh hiệu quả với mốc chuẩn
  • Mốc chuẩn thường là trung bình hoặc trung vị
Lập báo cáo trong SQL

Chỉ số hiệu quả (performance index)

bảng basketball_summary
+----------+--------+---------+
| team_id  | games  | points  |
|----------|--------|---------|
| 1        | 24     | 782     |
| 2        | 20     | 625     |
| 3        | 12     | 487     |
+----------+--------+---------+
  • Hiệu suất điểm mỗi trận?
Lập báo cáo trong SQL

Chỉ số hiệu quả (performance index)

Bước 1: điểm/trận cho từng đội

SELECT 
    team_id, 
    points/games AS team_ppg
FROM basketball_summary;

Bước 2: điểm/trận của cả giải

SELECT 
    team_id, 
    points/games AS team_ppg,
    SUM(points) OVER () / SUM(games) OVER () AS league_ppg
FROM basketball_summary;
Lập báo cáo trong SQL

Chỉ số hiệu quả (performance index)

Bước 3: tính chỉ số hiệu quả

SELECT 
    team_id, 
    points/games AS team_ppg,
    SUM(points) OVER () / SUM(games) OVER () AS league_ppg,
    (points/games) 
    / 
    (SUM(points) OVER () / SUM(games) OVER ()) AS perf_index
FROM basketball_summary;
Lập báo cáo trong SQL

Chỉ số hiệu quả (performance index)

Bước 3: tính chỉ số hiệu quả

+----------+----------+------------+-------------+
| team_id  | team_ppg | league_ppg | perf_index  |    
|----------|----------|------------|-------------|
| 1        | 32.6     | 33.8       | 0.96        |
| 2        | 31.3     | 33.8       | 0.92        |
| 3        | 40.6     | 33.8       | 1.20        |
+----------+----------+------------+-------------+
1 Kết quả cho thấy đội 3 ghi điểm cao hơn trung bình giải 20%.
Lập báo cáo trong SQL

Đến giờ truy vấn!

Lập báo cáo trong SQL

Preparing Video For Download...