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

Hiệu suất tốt nhất để Lấy kết quả MySQL EAV dưới dạng Bảng quan hệ là gì

Cách tốt nhất để tìm hiểu là kiểm tra, tất nhiên. Câu trả lời có thể khác nhau tùy thuộc vào kích thước của tập dữ liệu, số lượng các siêu khóa khác nhau, sự phân bố của chúng (có phải tất cả các thực thể đều có giá trị cho tất cả các siêu khóa hay chỉ cho một vài trong số chúng?), Cài đặt cơ sở dữ liệu của bạn máy chủ và có thể nhiều yếu tố khác.

Nếu tôi đoán, tôi muốn nói rằng chi phí của JOIN hoạt động trong tùy chọn 2 sẽ nhỏ hơn chi phí của GROUP BY và tổng hợp các chức năng cần thiết trong tùy chọn 1 và 3.

Vì vậy, tôi hy vọng sẽ tìm thấy Tùy chọn 2 nhanh hơn 1 và 3.

Để đo lường Tùy chọn 4, bạn sẽ phải xem xét nhiều yếu tố hơn vì ứng dụng có thể nằm trong một máy chủ khác, do đó phải tính đến tải của hai máy chủ (db và ứng dụng) và số lượng máy khách sẽ yêu cầu các kết quả này .

Ghi chú bên lề:bạn cần GROUP BY e.ID trong tùy chọn 1 và 3.



  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àm cách nào để tôi có thể lặp qua tập kết quả MySQL?

  2. Điều khoản OUTPUT trong MySQL

  3. Tìm ngày giờ gần nhất với ngày giờ được chỉ định trong truy vấn mysql

  4. Làm cách nào để chỉ trích xuất các cột có giá trị khác 0 trong mysql và php?

  5. Ánh xạ một Bộ kết quả JDBC với một đối tượng