Định dạng SQL
Biến SQL lộn xộn thành câu lệnh sạch, dễ đọc.
Chạy ngay trên trình duyệt. Không có gì bạn nhập vào bị gửi đi đâu cả.
- 6 phương ngữ SQL
- Từ khóa hoa hoặc thường
- Không tải gì lên
Cách định dạng SQL
- Dán câu lệnh SQL của bạn.
- Chọn phương ngữ, kiểu chữ từ khóa và độ rộng thụt lề.
- Sao chép hoặc tải SQL đã định dạng.
Khác biệt giữa các phương ngữ mà công cụ xử lý
| Phương ngữ | Đặc điểm được xử lý |
|---|---|
| MySQL | Định danh trong dấu backtick |
| PostgreSQL | Định danh trong dấu ngoặc kép và ép kiểu :: |
| SQL Server | Định danh trong ngoặc vuông và TOP thay vì LIMIT |
| SQLite | Quy tắc đặt dấu ngoặc định danh dễ dãi hơn |
| BigQuery | Đường dẫn bảng trong dấu backtick như project.dataset.table |
| SQL chuẩn | Định danh trong dấu ngoặc kép kiểu ANSI, mục tiêu mặc định |
Định dạng thay đổi gì, và giữ nguyên gì
- Thay đổi: kiểu chữ từ khóa, thụt lề của mệnh đề và join, và vị trí ngắt dòng trước SELECT, FROM, WHERE và JOIN.
- Giữ nguyên: tên bảng và tên cột, nội dung chuỗi ký tự, và mọi chú thích trong câu lệnh.
- Chú thích viết bằng -- hoặc bọc trong /* */ giữ nguyên đúng vị trí, gắn với cùng dòng hoặc khối đó.
Mẹo khi định dạng SQL
- Dán nhiều câu lệnh cách nhau bằng dấu chấm phẩy và mỗi câu sẽ được định dạng tại chỗ.
- Chọn đúng phương ngữ mà cơ sở dữ liệu của bạn thực sự chạy, để cách đặt dấu ngoặc định danh trong kết quả khớp với những gì server của bạn mong đợi.
- Nếu kiểu đặt dấu ngoặc của một phương ngữ gây lỗi trong cơ sở dữ liệu của bạn, hãy thử SQL chuẩn rồi tự chỉnh định danh bằng tay.
- Độ rộng thụt lề lớn hơn có thể giúp một câu lệnh dài với nhiều join dễ rà soát hơn, vì mỗi cấp lồng nổi bật hơn.
Câu hỏi thường gặp về Định dạng SQL
Những phương ngữ SQL nào được hỗ trợ?
SQL chuẩn, MySQL, PostgreSQL, SQL Server, SQLite và BigQuery. Mỗi loại xử lý dấu ngoặc định danh và hàm hơi khác nhau.
Công cụ có kiểm tra SQL của tôi đúng hay không?
Không. Nó chỉ định dạng lại câu lệnh cho dễ đọc. Nó không kết nối tới cơ sở dữ liệu hay xác thực tên bảng, tên cột.
Tôi có thể định dạng cả một file nhiều câu lệnh cùng lúc không?
Được. Dán nhiều câu lệnh cách nhau bằng dấu chấm phẩy và mỗi câu sẽ được định dạng tại chỗ.
Độ rộng thụt lề điều khiển điều gì?
Nó đặt số dấu cách cho mỗi cấp lồng nhau, từ 2 cho câu lệnh gọn đến 8 cho join và subquery lồng sâu.
SQL của tôi có bị tải lên đâu không?
Không. Việc định dạng diễn ra ngay trên trình duyệt của bạn, nên câu lệnh và mọi dữ liệu trong đó ở lại trên thiết bị.
Định dạng có sắp xếp lại câu lệnh của tôi không?
Không. Mệnh đề, join và subquery vẫn giữ đúng thứ tự bạn viết. Chỉ thụt lề, ngắt dòng và kiểu chữ từ khóa thay đổi.
Công cụ có định dạng được stored procedure hay script có biến không?
Câu lệnh SELECT, INSERT, UPDATE và DELETE thuần định dạng tốt. Cú pháp thủ tục đặc thù theo phương ngữ, như luồng điều khiển T-SQL hay khối PL/pgSQL, có thể không thụt lề gọn gàng, vì bộ định dạng nhắm vào cú pháp truy vấn chuẩn.
Công cụ có xử lý CTE (mệnh đề WITH) và window function không?
Có. Common table expression và window function định dạng giống như mọi cú pháp khác mà thư viện sql-formatter bên dưới hiểu được, kể cả cách thụt lề riêng của chúng.