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

Cách tốt nhất để lưu trữ Giá trị hộp kiểm trong Cơ sở dữ liệu MySQL là gì?

Bạn có một mối quan hệ nhiều-nhiều giữa tài sản và tiện nghi. Để lập mô hình này, bạn cần một bảng riêng biệt, không phải một số cột thay đổi.

Có một bảng lưu trữ các thuộc tính của bạn.

INSERT INTO property (id, address, square_footage...) VALUES (111, '123 Main St', 1234...)

Có một bàn lưu trữ tất cả các tiện nghi có thể có.

INSERT INTO amenities (id, type, description) VALUES (222, 'Unit Features', 'Air Conditioning');

Đối với mỗi tiện nghi mà thuộc tính có, hãy chèn một hàng vào bảng liên quan đến hai thứ này:

INSERT INTO property_amenitities (property_id, amenity_id) VALUES (111, 222);

Khi bạn muốn biết một thuộc tính cụ thể có những tiện nghi gì, chỉ cần SELECT tất cả các hàng từ bảng này cho khóa của thuộc tính đó. Khi bạn muốn in ra các hộp kiểm cho tất cả các tiện nghi, hãy SELECT từ amenities bảng và thực hiện LEFT OUTER JOIN vào property_amenities bàn. Những hàng có giá trị rỗng từ property_amenities bảng là các hộp không được chọn.

Đọc liên quan . Bạn nên chọn một cuốn sách về cơ sở dữ liệu quan hệ từ BORDERS địa phương của bạn trước khi họ ngừng kinh doanh :)



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. SQL Chỉ chọn các hàng có nhiều mối quan hệ tồn tại

  2. Lỗi MySQL:đặc tả khóa không có độ dài khóa

  3. Nhiều bảng hoặc hàng, cái nào hiệu quả hơn trong SQL?

  4. Lỗi cú pháp Sql khi sử dụng truy vấn cơ sở dữ liệu UPDATE

  5. Làm cách nào để tạo một chuỗi ngẫu nhiên, duy nhất cho một trong các cột bảng MySql của tôi?