Vleague_Web là dự án thu thập, quản lý và phân tích dữ liệu các mùa giải V-League, bao gồm cầu thủ, đội bóng, trọng tài, sân vận động và kết quả thi đấu.
Lưu danh sách các mùa giải:
- Ví dụ:
2022,2023,2023-24,2024-25.
Danh sách 14 sân vận động.
- Thuộc tính quan trọng:
latitude,longitude(phục vụ API tính khoảng cách di chuyển). - Mỗi đội bóng sẽ có một sân nhà (
home_stadium_id).
Danh sách 17 đội bóng tham dự qua các mùa giải.
- Mỗi đội có một sân nhà (liên kết đến
Stadiums). - Thông tin cơ bản: tên đội, home_stadium_id v.v.
Danh sách toàn bộ cầu thủ đã từng thi đấu ở V-League.
- Chỉ lưu thông tin sinh học: họ tên, ngày sinh, chiều cao, cân nặng, vị trí.
- Không lưu thông tin đội bóng hay số áo — những thông tin này sẽ được quản lý qua bảng
TeamRosters.
Danh sách trọng tài của V-League, bao gồm trọng tài chính, trọng tài biên, VAR, v.v.
Bảng đăng ký cầu thủ theo mùa giải, trả lời câu hỏi:
“Cầu thủ A thi đấu cho Đội B ở Mùa giải C với số áo X?”
Đây là bảng trung tâm của toàn bộ cơ sở dữ liệu.
Lưu thông tin lịch thi đấu, tỷ số và trạng thái trận đấu.
Các cột chính:
match_id— khóa chínhseason_id— liên kết đến mùa giảiround- vòng đấumatch_datetime- Thời gian diễn rahome_team_id,away_team_id— đội chủ nhà và đội kháchstadium_id— sân thi đấuhome_score,away_score— tỉ số cuối cùngstatus— trạng thái trận đấu (scheduled,live,finished,postponed)match_url- link dẫn đến kết quả trận đấu
Ghi lại 22+ cầu thủ đã tham gia trong một trận đấu.
Các cột chính:
match_id— liên kết đến bảngMatchesplayer_id— liên kết đến bảngPlayersteam_id— đội bóng của cầu thủ trong trậnshirt_number— số áo thực tế mặc trong trậnis_starter—TRUEnếu cầu thủ đá chính,FALSEnếu vào sân thay ngườiposition- vị trí chơi
👉 Cần thiết để tái hiện lại đội hình xuất phát và danh sách dự bị của từng trận.
Ghi lại các sự kiện diễn ra trong trận đấu, ví dụ: bàn thắng, thẻ vàng, thay người.
Các cột chính:
event_id— khóa chínhmatch_id— trận đấu liên quanteam_id- đội thực hiện sự kiệnplayer_id— cầu thủ tham gia sự kiệnminute— phút xảy ra sự kiệnevent_type— loại sự kiện (goal,yellow_card,red_card)
Ghi lại các trọng tài tham gia điều hành trong mỗi trận đấu.
Các cột chính:
match_id— liên kết đến bảngMatchesreferee_id— liên kết đến bảngRefereesrole— vai trò cụ thể (Trọng tài chính,Trợ lý 1,Trợ lý 2,Trọng tài thứ 4 (giơ bảng),VAR,AVAR, …)
👉 Cho phép thống kê và phân tích tần suất bắt chính, số trận điều hành của từng trọng tài.
Lưu bảng xếp hạng theo từng vòng đấu, giúp truy vấn nhanh mà không phải tính toán lại từ đầu.
Các cột chính:
season_id— mùa giảiteam_id— đội bónground— vòng đấu hiện tạiposition— thứ hạngplayed- số trận đã chơipoints,wins,draws,losses— số điểm và kết quảgoals_for,goals_against,goal_difference— thống kê bàn thắng/thua
💡 Lợi ích: Khi API cần hiển thị bảng xếp hạng, chỉ cần đọc 14 dòng (mỗi đội 1 dòng) thay vì phải tính toán lại toàn bộ 200+ trận đấu → truy vấn cực nhanh.