Các lượt nộp
    Danh sách bài
    Trang chủ
    Báo lỗi

    solution

    Đề bài: [MySQL] Phân nhóm thời gian chạy theo khoảng động

    Giải chạy marathon ghi thời gian hoàn thành của vận động viên (phút). Hãy đếm số VĐV theo các khoảng (bin) rộng 30 phút tính từ 0: [0,30), [30,60), [60,90)...

    Bảng vdv:

    Cột Kiểu Ý nghĩa
    ten VARCHAR(30) Tên VĐV
    thoigian INT Thời gian (phút)

    Yêu cầu: in bin_dau (mốc đầu khoảng = FLOOR(thoigian/30)*30) và so_vdv là số VĐV rơi vào khoảng đó. Chỉ in các khoảng có VĐV. Sắp xếp theo bin_dau tăng dần.

    Ví dụ: thời gian 25 và 40 cho ra bin_dau 0 (1 VĐV) và 30 (1 VĐV).

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

      SETUP SQL tạo bảng vdv và chèn dữ liệu.

    • Ràng buộc đầu vào:

      thoigian >= 0. Không dùng NOW/CURDATE.

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

      Mỗi dòng: bin_dau, so_vdv. Sắp xếp theo bin_dau tăng dần.

    Ví dụ:

    Đầu vào:

    CREATE TABLE vdv (ten VARCHAR(30), thoigian INT);
    INSERT INTO vdv VALUES ('A',25),('B',40),('C',55),('D',95);

    Đầu ra:

    0	1
    30	2
    90	1

    Giải thích:

    A(25)->bin 0; B(40),C(55)->bin 30; D(95)->bin 90. Kết quả: 0 có 1, 30 có 2, 90 có 1.

    Đang tải editor...