Viết SQL hiệu quả và giải mã Execution Plan để tăng tốc truy vấn

Viết SQL hiệu quả & Giải mã Execution Plan – Những điều đáng nhớ tại webinar 25/06 

Ngày đăng: 03/07/2025

Tối ngày 25/06/2025, Datapot đã tổ chức thành công buổi webinar với chủ đề: “Viết SQL hiệu quả & Giải mã Execution Plan để tăng tốc truy vấn”, thu hút hơn 100 bạn trẻ yêu công nghệ tham dự. 
Dưới sự chia sẻ của anh Huỳnh Tuấn Kiệt – hiện là Database Administrator tại VietFul và SQL Teaching Assistant tại Datapot, buổi học đã giúp người xem tháo gỡ nhiều hiểu lầm phổ biến khi làm việc với SQL, đặc biệt là ở khía cạnh hiệu suất truy vấn và xử lý dữ liệu. 

1. Viết SQL đúng chưa đủ – cần viết sao cho máy hiểu nhanh và xử lý nhẹ 

Đây là câu nói được nhấn mạnh nhiều lần trong suốt buổi webinar. Anh Kiệt đã chỉ ra rằng, nhiều người học SQL chỉ tập trung vào việc câu lệnh chạy được, ra đúng kết quả, mà chưa quan tâm đến chuyện “chạy như thế nào”. 

Tư duy viết SQL hiệu quả bắt đầu từ việc: 

  • Viết câu lệnh rõ ràng, ngắn gọn, đúng mục tiêu truy xuất 
  • Không để máy xử lý dư thừa – tức tránh gọi quá nhiều dữ liệu không cần thiết 
  • Hạn chế những thói quen “cho tiện” như SELECT * hay lồng subquery phức tạp mà có thể JOIN được 

2. Ba nhóm cách cải thiện hiệu suất SQL mà người học thường bỏ qua 

Trong phần đầu của webinar, diễn giả chia sẻ 3 nhóm hướng tiếp cận để cải thiện hiệu suất truy vấn. Đây là những nguyên tắc nền tảng, dễ hiểu nhưng rất dễ bị bỏ qua. 

Tối ưu từ chính câu lệnh SELECT 

  • Không dùng SELECT* nếu không cần tất cả dữ liệu 
  • WHERE không nên áp dụng hàm vào cột đã có chỉ mục 
  • Tránh lồng subquery nhiều lớp, ưu tiên JOIN hoặc WITH 
  • ORDER BY, GROUP BY, DISTINCT chỉ nên dùng khi thực sự cần thiết 
  • Cân nhắc dùng EXISTS/IN hợp lý thay vì JOIN dư thừa 

Hiểu và đọc đúng Execution Plan 

  • Execution Plan là nơi SQL Server thể hiện cách nó chạy câu lệnh của bạn 
  • Bạn có thể thấy được hệ thống có đang quét toàn bộ bảng không, hay dùng chỉ mục thông minh 
  • Quan sát số lượng dòng dữ liệu mà hệ thống dự đoán so với thực tế là cách để phát hiện chỗ “nghẽn” 
  • Execution Plan không khó – nếu biết cách đọc đúng vị trí và so sánh trước – sau 

Tối ưu cách viết trong thủ tục, hàm, trigger… 

  • Tránh dùng các hàm nặng trong SELECT 
  • Nên dùng bảng tạm (temp table) nếu truy xuất nhiều lần 
  • Hạn chế sử dụng CURSOR – loại vòng lặp dễ làm hệ thống chạy chậm 
  • Viết logic rõ ràng, dễ kiểm soát, tránh dùng trigger không cần thiết 

3. Live demo: Thực hành chỉnh sửa câu lệnh SQL nhằm tăng tốc truy vấn 

Điểm nổi bật trong buổi học là phần anh Kiệt sửa trực tiếp những câu SQL phổ biến, được viết đúng nhưng chạy rất chậm. 
Bằng cách chỉ ra từng lỗi nhỏ trong cách viết, sau đó sửa lại và cho xem Execution Plan trước và sau, anh giúp người học thấy rõ: 

  • Vì sao câu lệnh ban đầu lại chậm (dù đúng) 
  • Điều chỉnh gì để hệ thống hiểu và xử lý nhẹ hơn 
  • Execution Plan sau khi sửa đã bỏ được các bước thừa, thời gian chạy giảm đáng kể 

Nhiều bạn tham gia buổi học chia sẻ đây là phần “vỡ ra” nhất, vì dễ hình dung và học theo được ngay. 

4. Công cụ hỗ trợ phân tích và cải thiện SQL 

Bên cạnh SQL Server Management Studio (SSMS), anh Kiệt còn gợi ý một số công cụ hữu ích: 

  • SQL Sentry Plan Explorer: miễn phí, giao diện trực quan, dễ xem hơn Execution Plan mặc định 
  • Database Performance Analyzer (SolarWinds): phù hợp với doanh nghiệp cần theo dõi sâu 
  • So sánh số lượng dòng ước lượng và thực tế là một trong những cách nhanh nhất để phát hiện lỗi truy vấn 

5. Bộ checklist 4 phần giúp bạn tự kiểm tra câu lệnh SQL 

Để người học có thể tự luyện tập sau buổi học, Datapot đã tổng hợp lại Checklist tối ưu SQL gồm 4 phần: 

  • Kiểm tra cách viết SELECT 
  • Đọc và hiểu Execution Plan 
  • Kiểm tra cách dùng Index 
  • Tối ưu logic trong function, stored procedure, trigger… 

Tổng kết 

Một câu SQL đúng có thể tiết kiệm hàng giờ. Một lộ trình học đúng có thể rút ngắn cả năm sự nghiệp. Thay vì tiếp tục mày mò đơn độc, bạn có thể thử tìm hiểu khóa học Data Analytics Foundation Plus tại Datapot. Lộ trình học chuẩn Microsoft, giảng viên giàu kinh nghiệm thực tế đang làm việc tại các tập đoàn lớn, cộng đồng phân tích dữ liệu hơn 100.000 thành viên luôn sẵn sàng giúp đỡ bạn trên con đường chinh phục dữ liệu này.  

Hy vọng bạn đã lưu lại những gì mình cần – và đừng ngần ngại bắt đầu hành trình học bài bản với Datapot nếu muốn đi xa hơn trên con đường Data! 

Kết nối thêm với chúng mình 

Fanpage 

Cộng đồng Data, AI và Tự động hóa 200,000+ thành viên 

Youtube 

Zalo 

Chúc bạn luôn thành công trong công việc và cuộc sống! 

Chia sẻ bài viết này

Để lại một bình luận

Email của bạn sẽ không được hiển thị công khai. Các trường bắt buộc được đánh dấu *

This site uses Akismet to reduce spam. Learn how your comment data is processed.