Cách định dạng truy vấn SQL

· 3 phút đọc

SQL lộn xộn là một trong những cách nhanh nhất để gây ra lỗi. Khi một truy vấn nằm trên một dòng dài duy nhất mà không có thụt lề, khó để thấy điều kiện nào áp dụng cho phép kết hợp nào, các truy vấn con bắt đầu và kết thúc ở đâu, hoặc liệu logic có chính xác hay không.

Tại sao việc định dạng quan trọng

Cách định dạng SQL

  1. Dán SQL của bạn — nhập một truy vấn đã nén hoặc lộn xộn vào trình định dạng. Nó xử lý SELECT, INSERT, UPDATE, DELETE, CREATE TABLE, cũng như các truy vấn phức tạp với truy vấn con và phép kết hợp.
  2. Cấu hình tùy chọn — chọn kích thước thụt lề và liệu các từ khóa có nên viết hoa hay không. Các thiết lập này tương ứng với hướng dẫn kiểu của dự án của bạn.
  3. Sao chép kết quả — SQL được định dạng đã sẵn sàng để dán lại vào trình soạn thảo, máy khách cơ sở dữ liệu hoặc tài liệu của bạn.

Định dạng tốt trông như thế nào

Một truy vấn như select u.name, o.total from users u join orders o on u.id = o.user_id where o.total > 100 and u.active = 1 order by o.total desc trở thành:

SELECT
  u.name,
  o.total
FROM users u
JOIN orders o
  ON u.id = o.user_id
WHERE o.total > 100
  AND u.active = 1
ORDER BY o.total DESC

Mỗi mệnh đề bắt đầu trên dòng riêng của nó. Các điều kiện được thụt lề dưới mệnh đề cha. Các phép kết hợp và điều kiện ON của chúng được ghép cặp rõ ràng.

Mẹo

Câu hỏi thường gặp

Có nên viết hoa các từ khóa SQL không?

Đó là một quy ước được tuân theo rộng rãi để viết hoa các từ khóa SQL (SELECT, FROM, WHERE) và viết thường tên bảng hoặc cột. Điều này làm cho các truy vấn dễ đọc hơn về mặt thị giác. Hầu hết các hướng dẫn kiểu khuyến nghị nó, nhưng không có công cụ cơ sở dữ liệu nào áp đặt nó.

Việc định dạng có thay đổi việc thực thi truy vấn không?

Không. Khoảng trắng và thụt lề không có tác dụng đến việc thực thi SQL. Định dạng hoàn toàn cho khả năng đọc của con người. Một truy vấn đã nén và một truy vấn đã thụt lề tạo ra cùng kết quả.

Nên dùng kích thước thụt lề nào?

Hai hoặc bốn khoảng trắng đều phổ biến. Chọn cái mà nhóm của bạn sử dụng và giữ nhất quán. Hầu hết các trình định dạng SQL cho phép cấu hình nó.

SQL của tôi có được gửi đến máy chủ không?

Không. Việc định dạng được thực hiện hoàn toàn trong trình duyệt của bạn. Các truy vấn của bạn không bao giờ rời khỏi thiết bị của bạn.