Quan hệ 1-nhiều
Ví dụ chúng ta tạo ra hai bảng User
và Task
trong đó mỗi user có nhiều task (công việc). Và mỗi task thì thuộc về một user nào đó.
- Ta gọi bảng
User
có mối quan hệhasMany
với bảngTask
. - Bảng
Task
có mối quan hệbelongTo
với bảngUser
.
Thiết kế bảng
Việc thiết kế bảng không khác gì thiết kế bảng với quan hệ 1-1
|
|
Để ý là bảng tasks
chứa id của bảng users
. Và mỗi users
có thể có nhiều giá trị trùng nhau trong bảng tasks
.
Truy vấn dữ liệu
Để lấy tên và công việc của từng người trong ví dụ trên chúng ta sử dụng:
|
|
Kết quả sẽ là:
+----+------------------------+-------------------+-------------+ | id | name | task | is_finished | +----+------------------------+-------------------+-------------+ | 1 | Nguyễn Ngọc Tuấn | học toán | 1 | | 2 | Nguyễn Ngọc Tuấn | học tiếng anh | 0 | | 3 | Nguyễn Ngọc Tuấn | làm việc nhà | 0 | | 4 | Phan Thanh Bình | làm việc nhà | 1 | +----+------------------------+-------------------+-------------+