Viết, chạy và phân tích query
Tính năng trả phí trên trang này: Query Insights (gói Starter) và Result Charts (gói Starter). Mọi thứ khác trên trang đều miễn phí.
Editor hiểu schema của bạn
Autocomplete đọc schema của connection ngay khi bạn gõ: tên table sau FROM và JOIN, các cột của một alias, và các cột của CTE hay subquery đã khai báo trước đó trong câu lệnh. Tô sáng cú pháp dùng tree-sitter, còn ⌘⇧L định dạng câu lệnh tại con trỏ mà vẫn giữ nguyên comment.
⌘⏎ chạy câu lệnh tại con trỏ hoặc phần đang chọn, ⌘⇧⏎ chạy tất cả, ⌘⌥⏎ chạy mà không giới hạn số dòng, và ⌘. để hủy. Một loạt câu lệnh thông thường chạy trong cùng một transaction và được rollback nếu có câu lỗi; ngoại lệ là script tự quản lý transaction, script SQL Server, câu lệnh không thể nằm trong transaction như VACUUM, và DDL trên MySQL, MariaDB và Oracle vốn tự commit.
- Đánh dấu từng câu lệnh ở lề trái, mỗi câu có nút chạy riêng.
- Tìm và thay thế, hỗ trợ biểu thức chính quy (regex).
- Vim mode với motion, register và macro;
:wsẽ chạy query. - Mở, sửa và lưu file
.sqlngay trong một tab query.


Tham số, lịch sử và query đã lưu
Viết :customer_id trong query, TablePro sẽ hỏi giá trị và kiểu dữ liệu trước khi chạy, rồi bind giá trị theo cách native khi driver hỗ trợ.
Mọi query bạn chạy đều được ghi vào lịch sử trên máy (⌘Y), có tìm kiếm toàn văn và bộ lọc theo nguồn, theo query lỗi và theo khoảng thời gian. Mặc định lịch sử giữ 10.000 mục trong 90 ngày và không bao giờ được đồng bộ.
Lưu một query kèm từ khóa, chẳng hạn dau, rồi gõ từ khóa đó trong editor để chèn lại cả query. Query đã lưu có lịch sử phiên bản. Linked SQL folder đồng bộ hai chiều một thư mục file .sql với sidebar, kèm ký hiệu trạng thái Git cho từng file; tính năng này miễn phí và khác với Linked Folders, tính năng của gói Starter để chia sẻ file connection.


Open Quickly và tab
Open Quickly (⌘⇧O) tìm table, view và system table trên mọi connection đang mở, cùng với query đã lưu và query gần đây. Mỗi tab giữ SQL, thứ tự sắp xếp, bộ lọc và độ rộng cột của riêng nó, và các tab được mở lại sau khi bạn thoát rồi mở lại ứng dụng; ⌃Tab chuyển qua lại giữa các tab vừa dùng.
Đọc execution plan, so sánh và theo dõi
EXPLAIN và EXPLAIN Compare
⌥⌘E hiển thị execution plan của query dưới dạng sơ đồ, dạng cây kèm thanh chi phí, hoặc nguyên văn kết quả của engine. Chọn một lần chạy trước của cùng query làm mốc, Compare sẽ cho biết query có chậm đi không và plan có thay đổi không; chênh lệch dưới 15% được coi là nhiễu. Cả hai đều miễn phí.
- Plan dạng sơ đồ và cây
- PostgreSQL, MySQL, SQLite, MariaDB, CockroachDB, PGlite, ClickHouse, DuckDB, Cloudflare D1, Turso, libSQL, Google Cloud Spanner, Dameng DM8, SAP HANA
- Plan dạng văn bản
- TiDB, OceanBase, Databend, Amazon Redshift, Snowflake, SurrealDB, Teradata, Trino, Cloudflare R2 SQL
- Ước tính chi phí bằng dry run
- Google BigQuery
- Engine SQL không có EXPLAIN
- SQL Server, Oracle, Beancount


Query Insights
Query Insights: gói Starter
Query Insights đọc lịch sử query trên máy Mac này và xếp hạng những gì tìm được: các query chạy nhiều nhất, chậm nhất, hay lỗi, và những query chậm hơn so với giai đoạn trước. Query được gom theo dạng, nên cùng một câu lệnh chạy với giá trị khác nhau chỉ tính một lần. Số liệu được tính ngay trên máy Mac và không bao giờ được tải lên.


Kết quả dạng biểu đồ và bản đồ
Ngay trong một tab, kết quả có thể chuyển từ data grid sang biểu đồ hoặc bản đồ, rồi quay lại.
Result Charts
Result Charts: gói Starter
Vẽ kết quả thành biểu đồ cột, đường, vùng hoặc biểu đồ điểm (scatter), với trục thời gian cho cột ngày tháng và một series cho mỗi giá trị của cột bạn chọn. Một biểu đồ vẽ tối đa 2.000 điểm và 20 series từ 50.000 dòng đầu tiên, và thanh công cụ sẽ báo khi biểu đồ không vẽ hết dữ liệu.


Map view
Khi một cột chứa dữ liệu hình học dạng WKT, WKB, GeoJSON, tuple của ClickHouse hay geo_point của Elasticsearch, Map view vẽ chúng trên Apple Maps, và chọn một hình trên bản đồ sẽ chọn dòng tương ứng. Dữ liệu của bạn vẫn ở trên máy Mac; Apple chỉ cung cấp các ô bản đồ. Map view miễn phí.


Engine không dùng SQL
Với connection không dùng SQL, editor chuyển sang ngôn ngữ riêng của engine đó, và trang của từng engine nêu rõ những gì được hỗ trợ. Editor của MongoDB là một shell JavaScript kiểu mongosh chạy bên trong TablePro, không phải chính mongosh.
- Ngôn ngữ query theo engine
- MongoDB (MQL), Redis (Redis CLI), Cassandra (CQL), ScyllaDB (CQL), Amazon DynamoDB (PartiQL), Elasticsearch (Query DSL), etcd (etcdctl), Apache Kafka (KafkaQL), SurrealDB (SurrealQL), Typesense (Typesense API), Weaviate (GraphQL)
Trên iPhone và iPad
Ứng dụng cho iPhone và iPad có tab Truy vấn (Query) với tô sáng cú pháp SQL, nút Run và Stop (⌘↩ khi dùng bàn phím), và lịch sử 200 query gần nhất đã chạy trên thiết bị đó. Bạn có thể sao chép hoặc chia sẻ kết quả dưới dạng JSON, CSV hoặc câu lệnh SQL INSERT.
Ứng dụng không có autocomplete, định dạng query, tham số, EXPLAIN hay query đã lưu, và chỉ giữ tối đa 10.000 dòng của một kết quả, nên hãy thêm LIMIT để xem đúng phần bạn cần.
Dùng được ở đâu
| Tính năng |
|---|
| SQL editor có autocomplete và định dạngMac: Miễn phíiPhone và iPad: Tô sáng cú pháp, Run và Stop; không có autocomplete |
| Tham số trong queryMac: Miễn phíiPhone và iPad: Không có |
| Lịch sử queryMac: Miễn phíiPhone và iPad: 200 query gần nhất trên thiết bị |
| Query đã lưu và linked SQL folderMac: Miễn phíiPhone và iPad: Không có |
| Open QuicklyMac: Miễn phíiPhone và iPad: Không có |
| EXPLAIN và EXPLAIN CompareMac: Miễn phíiPhone và iPad: Không có |
| Query InsightsMac: Gói StarteriPhone và iPad: Không có |
| Result ChartsMac: Gói StarteriPhone và iPad: Không có |
| Map viewMac: Miễn phíiPhone và iPad: Không có |
| Sao chép hoặc chia sẻ kết quảMac: Miễn phíiPhone và iPad: Miễn phí |
Giới hạn nên biết
- Một query trả về tối đa 10.000 dòng, trừ khi bạn nâng giới hạn trong Cài đặt (tối đa 500.000) hoặc chạy bằng ⌘⌥⏎. LIMIT bạn tự viết luôn được ưu tiên.
- Lịch sử query và Query Insights chỉ lấy dữ liệu trên máy Mac này: query chạy trên máy Mac khác hay trên iPhone không có trong đó.
- Lệnh shell
tablepromở connection và file trong ứng dụng, không chạy query từ terminal.
Tải TablePro
macOS 13 Ventura trở lênApple silicon hoặc Intel