Các lượt nộp
    Danh sách bài
    Trang chủ
    Báo lỗi
    solution
    Đăng nhập
    Đăng nhập

    Đề bài: [SQL 10.4] Capstone: Top 3 khách hàng giao dịch nhiều nhất mỗi loại

    📖Cần ôn lý thuyết? Đọc bài giảng Buổi 10: Index & Transaction + Review toàn bộ khóa — khóa SQL

    Phần 4 — phân tích nâng cao (kết hợp JOIN + CTE + window). Tính giá trị giao dịch của từng khách hàng (Trades → Orders → Accounts → Customers, giá trị = quantity * price), chỉ xét khách hàng có ít nhất một giao dịch. Trong mỗi customer_type, xếp hạng rk bằng ROW_NUMBER() theo tổng giá trị giảm dần (đồng hạng → customer_id tăng dần) và tính pct_of_type = tỷ trọng % của khách hàng trong tổng giá trị của loại đó (làm tròn 2 chữ số).

    Chỉ giữ top 3 mỗi loại. Cột: customer_type, rk, customer_id, full_name, trade_count, total_value, pct_of_type. Sắp theo customer_type, rk.

    • Định dạng đầu vào:

      Bảng Customers, Accounts, Orders, Trades.

    • Định dạng đầu ra:

      customer_type, rk, customer_id, full_name, trade_count, total_value, pct_of_type (TAB).

    Ví dụ:

    Đầu vào:

    Đầu ra:

    INDIVIDUAL	1	16	Dinh Thi Uyen	6	703300000.00	28.36
    INDIVIDUAL	2	22	Nguyen Thi Chi	7	420525000.00	16.96
    INDIVIDUAL	3	5	Hoang Van Em	5	220400000.00	8.89
    INSTITUTION	1	36	Quy Dau tu Tang Truong Xanh	4	422600000.00	30.42
    INSTITUTION	2	35	Cong ty CP Chung khoan An Binh	4	256600000.00	18.47
    INSTITUTION	3	32	Ngan Hang Nong Nghiep Phat Trien	5	204650000.00	14.73

    Giải thích:

    Mỗi loại khách hàng (INDIVIDUAL / INSTITUTION) có 3 dòng xếp hạng.

    Chủ đề

    📊 SQLSQLSQL: Buổi 10 – Index, Transaction & CapstoneTất cả môn học

    Đang tải editor...