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

Tham gia MySQL nâng cao. Tăng tốc truy vấn

Có một cách nhưng nó sẽ trở nên đắt hơn khi bạn thêm nhiều trường. Điều tương tự cũng xảy ra với nhiều CMS chọn lưu trữ dữ liệu người dùng bổ sung ở dạng đó.

Bạn có thể nhận được một SQL tìm kiếm đang hoạt động bằng cách sử dụng sau:

SELECT
    users.*,
    firstname.data AS firstname,
    lastname.data AS lastname,
    eyecolor.data AS eyecolor,

FROM
    users
    LEFT JOIN completed_form_fields AS firstname ON firstname.userid = users.id AND firstname.fieldkey = "firstname"
    LEFT JOIN completed_form_fields AS lastname ON lastname.userid = users.id AND lastname.fieldkey = "lastname"
    LEFT JOIN completed_form_fields AS eyecolor ON eyecolor.userid = users.id AND eyecolor.fieldkey = "eyecolor"

WHERE
    firstname.data LIKE '%searchdata%'
    OR lastname.data LIKE '%searchdata%'
    OR eyecolor.data LIKE '%searchdata%'

Phương pháp này trở nên rất lớn và tốn kém cho máy chủ MySQL khi bạn thêm nhiều bảng. Do đó, tôi khuyên bạn không nên tham gia nhiều hơn 10-15 lần tham gia như vậy và sau đó lặp lại, tôi sẽ lập hồ sơ để đảm bảo.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. phép tham gia bên ngoài bên trái của mysql

  2. Bảng với 80 triệu bản ghi và thêm một chỉ mục mất hơn 18 giờ (hoặc mãi mãi)! Giờ thì sao?

  3. Cách tạo Pivot Table trong MySQL

  4. Kết nối bằng tương đương trước cho MySQL

  5. Cách kiểm tra kích thước của cơ sở dữ liệu trong MySQL