Home > MySQL > Tối ưu truy vấn Mysql – MySQL optimize query

Tối ưu truy vấn Mysql – MySQL optimize query

Tối ưu truy vấn mysql, tăng tốc độ thực thi câu lệnh:

Ví dụ: bài toán yêu cầu chúng ta truy vấn các sản phẩm có Giá nằm trong khoảng 20000 đến 60000

SELECT COUNT(*) FROM products WHERE price BETWEEN 20000 AND 60000;

//output – xuất ra tổng số sản phẩm có giá nằm trong khoảng

Câu truy vấn trên là đúng, nhưng với các dự án có dữ liệu hoặc các bảng (table) lưu trữ lớn thì việc thực thi sẽ rất chậm. (thường các nhà phát triển yêu cầu thực thi bằng mili giây)

Vậy làm thế nào để cải thiện hoặc tăng tốc độ truy xuất ? ngoài việc tối ưu câu truy vấn, MySQL cung cấp một kiểu định dạng INDEX. Như phần chú giải của MySQL đây là cách thực thi nhanh nhất (The best way to improve the performance)

Chúng ta phát biểu INDEX cho trường price như sau:

ALTER TABLE products ADD INDEX ( price);

Sau đó chúng ta hay thử gọi lại câu truy vấn bên trên để thấy sự khác biệt

SELECT COUNT(*) FROM products WHERE price BETWEEN 20000 AND 60000;

Ghi chú:

– Sẽ không có sự khác biệt nhiều nếu bảng lưu trữ dữ liệu ít (số records)…bạn chỉ thấy sự khác biệt khi bảng dữ liệu lưu trữ có tới hàng trăm ngàn records..

Các bạn tham khảo thêm tại: http://dev.mysql.com/doc/refman/5.5/en/optimization-indexes.html

Chúc thành công

nhantam
Best vietnamese web developer team

Advertisements
  1. No comments yet.
  1. No trackbacks yet.

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s

%d bloggers like this: