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

Vấn đề cơ sở dữ liệu, cách lưu trữ cấu trúc dữ liệu thay đổi

Tôi muốn nói điều này yêu cầu mối quan hệ 1:n, trong đó có một bảng "bài tập" chính và một bảng "thành phần" thống nhất chứa tất cả các hoạt động của bài tập.

Bạn sẽ có bảng chính của mình workouts :

id   int
participant varchar(255)
date        datetime
...... any other workout related data

Sau đó, bảng con workout_components :

workout_id  int          // Which workout this belongs to
tabindex    int          // Which sorting order this component has in the list
repeat      int          // Number of repetitions (e.g. 3 sets)
quantity    int          // e.g. 45 push-ups or 150 meters of cycling
quentity_unit varchar    // e.g. minutes or laps
activity    varchar      // push-ups, cycling .....

một giá trị mẫu sẽ giống như sau:

bảng tập luyện:

id          participant      date
1           Harry Miller     2010-08-21

bảng workout_components:

workout_id  tabindex     repeat      quantity     quantity_unit  activity
1           1            3           45           pcs            pushups
1           2            1           2            minutes        rope-jumping

Ưu điểm:

  • Không giới hạn trong các hoạt động cụ thể

  • Dễ dàng truy vấn - mọi câu hỏi liên quan đến cách lấy thứ gì đó từ loại cấu trúc dữ liệu này đã được trả lời trên SO

  • Các hoạt động có thể được thêm tự do vào mỗi buổi tập luyện



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Tính toán chênh lệch giá trị giữa hai bản ghi trong Eloquent

  2. Android:cách tải lên hình ảnh trong mysql bằng php

  3. Cách giải quyết mệnh đề ORDER BY không có trong danh sách SELECT gây ra MySQL 5.7 với SELECT DISTINCT và ORDER BY

  4. Lỗi trong Kết nối MySQL khi truy cập máy chủ từ xa

  5. Việc sử dụng hàm cơ sở dữ liệu get_results () của WordPress có ngăn chặn việc tiêm sql không