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

Phân vùng Mysql và tham gia

Các bảng phân chia có thể được sử dụng trong các phép nối.

Chỉnh sửa where mệnh đề chỉ bao gồm một phân vùng để có được hiệu suất tốt nhất.
v.d. nếu bạn phân vùng theo năm, bạn có thể tham gia như:

select * from a
inner join partioned_table p on (p.id = a.id)
where p.year = '2011';

Truy vấn này sẽ hoạt động với và không có mệnh đề where, nhưng với mệnh đề where sẽ nhanh hơn nhiều vì bạn chỉ đang truy cập một phân vùng.
Nếu bạn truy cập nhiều phân vùng hơn, MySQL phải sử dụng bảng tạm thời để ghép các phân vùng lại. cùng nhau trước khi nó có thể thực hiện phép nối.
Loại này đánh bại mục đích của các phân vù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. Các JOIN trong SQL tốn kém như thế nào? Và / hoặc, đánh đổi giữa hiệu suất và bình thường là gì?

  2. Làm cách nào để chọn hàng liền kề trong sql khi được sắp xếp theo một trường khác?

  3. Truy vấn không cần thiết trong Hibernate - MySql

  4. Làm cách nào tôi có thể nhận được sự khác biệt giữa các giá trị tối đa riêng lẻ của các ngày khác nhau?

  5. Hủy truy vấn MySQL khi người dùng hủy bỏ