10/10/2018, 00:23

Tốc độ và cách viết ???

Theo các bác thì hai trường hợp sau:
- Viết một câu lệnh SQL phức tạp bao gồm a., b....Interjoin .... để thực hiện một công việc.
- Viết nhiều lệnh SQL đơn giản cùng để thực hiện công việc trên.

Cái nào chạy nhanh hơn?
Vui365 viết 02:24 ngày 10/10/2018
Theo kinh nghiệm của nhiều db-er thì join bao giờ cũng nhanh hơn nhiều câu select, sub select.
namrom viết 02:24 ngày 10/10/2018
Join nhanh hơn so với các câu lệnh đơn, và mình cũng không cần care đến việc trùng lặp dữ liệu nếu dùng các câu lệnh đơn
TheHeTre viết 02:38 ngày 10/10/2018
Điều này rất khó kết luận, phải tùy vào trường hợp cụ thể mới có thể biết được.

Thông thường, người ta dùng thuật toán kiểm tra và so sánh tốc độ giữa các câu lệnh này gọi là benchmark. Hoặc bạn có thể hỏi Google như "subquery vs join", "left join vs inner join" ..v.vv
trungtd_vtic viết 02:40 ngày 10/10/2018
đương nhiên join chạy nhanh hơn các câu lệnh đơn
cái nick đó viết 02:40 ngày 10/10/2018
viết nhiều lần lệnh đơn còn tăng số lần mở/đóng kết nối giữa mysql client/server

cũng phải cẩn thận khi dùng join
TheHeTre viết 02:31 ngày 10/10/2018
Được gửi bởi cái nick đó
viết nhiều lần lệnh đơn còn tăng số lần mở/đóng kết nối giữa mysql client/server

cũng phải cẩn thận khi dùng join
Ý của Thuận là mỗi lần ta phải mở kết nối và đóng kết nối cho mỗi câu truy vấn?

Thông thường trong 1page chỉ dùng 1 mysql_connect() ở đầu tiên và mysql_close() ở cuối cùng thì thao tác đóng mở chỉ là một :-s
cái nick đó viết 02:34 ngày 10/10/2018
ồ xin lỗi, nhầm. Ý mình muốn nói là mỗi lần thực thi một query thì giữa mysql client và mysql server (ko cần biết xài PHP hay cái gì) có tương tác, nhiều câu query lẻ thì nhiều tương tác sẽ chậm hơn là kết hợp query một lần vì đôi khi client nằm ở đây mà server cách đó nửa vòng trái đất
namhoang viết 02:37 ngày 10/10/2018
Được gửi bởi cái nick đó
ồ xin lỗi, nhầm. Ý mình muốn nói là mỗi lần thực thi một query thì giữa mysql client và mysql server (ko cần biết xài PHP hay cái gì) có tương tác, nhiều câu query lẻ thì nhiều tương tác sẽ chậm hơn là kết hợp query một lần vì đôi khi client nằm ở đây mà server cách đó nửa vòng trái đất
Cái này thì đúng là tùy cách viết thật. Nếu viết dưới dạng Framework khi kết quả được in ra 1 lần điều Thuận nói không ảnh hưởng nhiều.
Bài liên quan
0