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

Cách chính xác để lưu trữ các mục có thuộc tính có thể lọc?

Tôi thích sử dụng kết hợp cho điều này với kết hợp có điều kiện. Ví dụ:đối với dấu đầu dòng đầu tiên của bạn:

select a.carid
from attributes a
group by a.carid
having sum( (attribute, value) in ( ('color', 'red'), ('color', 'blue') ) ) > 0 and 
       sum( (attribute, value) in ( ('wheels', '2') ) > 0;

> 0 có nghĩa là tổ hợp thuộc tính / giá trị tồn tại. Sử dụng = 0 để xác định rằng nó không hoạt động.




  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Lỗi trình tự:xác định cuộc gọi không được xác định trong Index.js

  2. Tôi có thể hoàn tác bảng ALTER trong - MySQL không?

  3. Đếm nhiều hàng trong MySQL trong một truy vấn

  4. mysql_num_rows () mong muốn tham số 1 là tài nguyên, boolean đã cho

  5. Sao chép MySQL và chuyển đổi dự phòng dựa trên GTID - Đi sâu vào các giao dịch có lỗi