본문으로 건너뛰기

TablePro를 매일 쓰시나요? 라이선스로 유료 기능을 사용하고 다음 릴리스 개발을 지원하세요. 라이선스 구매라이선스로 TablePro 후원하기

쿼리 작성, 실행 및 이해

실제 데이터베이스에 SQL을 작성하는 분을 위해 스키마를 참고하며 작성하고 구문 하나나 전체 스크립트를 실행하며 보관할 쿼리를 저장하고 느려진 원인을 확인할 수 있습니다. 여기서 소개하는 기능은 Mac 앱에 있으며 마지막 절에서 iPhone과 iPad를 다룹니다.
MaciPhone 및 iPad

이 페이지의 유료 기능: Query Insights (Starter) 및 Result Charts (Starter). 나머지는 모두 무료입니다.

스키마를 이해하는 편집기

자동 완성은 입력하는 동안 연결의 스키마를 읽어 FROM과 JOIN 뒤의 테이블, 별칭의 열, 구문 앞부분에 정의한 CTE나 하위 쿼리의 열을 제안합니다. 구문 강조에는 tree-sitter를 사용하며 ⌘⇧L은 주석을 유지하면서 커서 위치의 구문을 서식 정리합니다.

⌘⏎은 커서 위치의 구문이나 선택 영역을 실행하고 ⌘⇧⏎은 모두 실행하며 ⌘⌥⏎은 행 제한 없이 실행합니다. ⌘.으로 취소합니다. 일반 구문 묶음은 하나의 트랜잭션으로 실행되며 하나라도 실패하면 롤백합니다. 자체 트랜잭션을 관리하는 스크립트, SQL Server 스크립트, VACUUM처럼 트랜잭션 안에서 실행할 수 없는 구문, 자체 커밋하는 MySQL·MariaDB·Oracle의 DDL은 예외입니다.

  • 편집기 여백에 구문 표시와 개별 실행 버튼을 제공합니다.
  • 정규식을 지원하는 찾기와 바꾸기.
  • 이동, 레지스터 및 매크로를 지원하는 Vim 모드에서 :w로 쿼리를 실행합니다.
  • .sql 파일을 쿼리 탭에서 열고 편집하고 저장합니다.
recent_orders라는 CTE를 users에 조인하는 쿼리가 있는 TablePro SQL 편집기와 CTE의 열을 표시하는 자동 완성 목록.

매개변수, 기록 및 저장된 쿼리

쿼리에 :customer_id를 쓰면 TablePro가 실행 전에 값과 유형을 요청하며 드라이버가 지원하는 경우 값을 기본 바인딩 방식으로 전달합니다.

실행한 모든 쿼리는 로컬 기록(⌘Y)에 저장되며 전체 텍스트 검색과 소스, 실패 및 기간 필터를 제공합니다. 기본적으로 90일 동안 10,000개 항목을 보관하며 동기화되지 않습니다.

dau 같은 키워드로 쿼리를 저장한 뒤 편집기에서 키워드를 입력해 펼칠 수 있습니다. 저장된 쿼리는 버전 기록을 유지합니다. 연결된 SQL 폴더는 .sql 파일 폴더와 사이드바를 양방향으로 동기화하고 각 파일에 Git 상태 문자를 표시합니다. 이 기능은 무료이며 공유 연결 파일을 위한 Starter 기능인 Linked Folders와 별개입니다.

:customer_id와 :since 매개변수를 사용하는 쿼리, 값을 입력하는 패널, 쿼리 기록 서랍.

빠른 열기 및 탭

Open Quickly(⌘⇧O)는 열려 있는 모든 연결의 테이블, 뷰 및 시스템 테이블과 저장된 쿼리, 최근 쿼리를 찾습니다. 각 탭은 SQL, 정렬, 필터 및 열 너비를 따로 유지하며 앱을 종료하고 다시 열어도 복원됩니다. ⌃Tab으로 최근 사용한 탭 사이를 이동합니다.

실행 계획 확인, 비교 및 추적

EXPLAIN 및 EXPLAIN Compare

⌥⌘E은 쿼리 실행 계획을 다이어그램, 비용 막대가 있는 트리 또는 엔진의 원시 출력으로 표시합니다. 같은 쿼리의 이전 실행을 기준으로 선택하면 Compare가 느려졌는지와 계획이 변경되었는지를 보여 줍니다. 15% 미만의 차이는 잡음으로 간주합니다. 두 기능 모두 무료입니다.

시험 실행 비용 추정
Google BigQuery
EXPLAIN이 없는 SQL 엔진
SQL Server, Oracle, Beancount
orders 쿼리의 EXPLAIN Compare. 실행 계획이 Index Scan에서 Seq Scan으로 바뀌고 쿼리가 기준보다 느려진 것을 보여 줍니다.

쿼리 분석

Query Insights: Starter 플랜

Query Insights는 이 Mac의 쿼리 기록을 읽고 가장 많이 실행된 쿼리, 가장 느린 쿼리, 실패한 쿼리 및 이전 기간보다 느려진 쿼리의 순위를 매깁니다. 쿼리는 형태별로 묶이므로 같은 구문을 다른 값으로 실행해도 하나로 집계합니다. 수치는 Mac에서 계산되며 업로드되지 않습니다.

최근 7일의 Query Insights. Most Run, Slowest, Got Slower 목록 위에 일별 성공 및 실패 쿼리 차트가 있고, 한 쿼리 형태가 Got Slower로 표시됩니다.

결과를 차트와 지도로 보기

같은 탭에서 결과를 그리드에서 차트나 지도로 전환하고 다시 돌아올 수 있습니다.

결과 차트

Result Charts: Starter 플랜

결과를 막대, 선, 영역 또는 산점도로 표시하며 날짜에는 시간 축을 사용하고 선택한 열의 각 값에 하나의 계열을 만듭니다. 차트는 처음 50,000개 행에서 최대 2,000개 점과 20개 계열을 그리며 일부가 생략되면 도구 막대에 표시합니다.

orders 테이블의 월별 매출 선 차트로, 주문 상태마다 선 하나가 있습니다.

지도 보기

열에 WKT, WKB, GeoJSON, ClickHouse 튜플 또는 Elasticsearch geo_point 값으로 지오메트리가 저장되어 있으면 지도 보기에서 Apple 지도에 표시하며 도형을 선택하면 해당 행이 선택됩니다. 행 데이터는 Mac에 남고 지도 타일은 Apple이 제공합니다. 지도 보기는 무료입니다.

PostGIS 테이블의 거주 지역을 지도에 표시하는 Map 뷰. 선택된 지점인 파리가 행 검사기에 표시됩니다.

SQL을 사용하지 않는 엔진

SQL을 사용하지 않는 연결에서는 편집기가 해당 엔진의 고유 언어를 사용하며 각 엔진 페이지에서 지원 범위를 설명합니다. MongoDB 편집기는 TablePro 내부에서 실행되는 mongosh 스타일의 JavaScript 셸이며 mongosh 자체는 아닙니다.

엔진별 쿼리 언어
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)

iPhone과 iPad에서

iPhone과 iPad 앱의 Query 탭에는 SQL 구문 강조, Run과 Stop(키보드 사용 시 ⌘↩) 및 해당 기기에서 실행한 최근 200개 쿼리 기록이 있습니다. 결과를 JSON, CSV 또는 SQL INSERT 구문으로 복사하거나 공유할 수 있습니다.

자동 완성, 서식 정리, 매개변수, EXPLAIN 및 저장된 쿼리는 지원하지 않으며 결과는 최대 10,000개 행만 보관합니다. 필요한 범위를 보려면 LIMIT를 추가하세요.

지원 범위

이 페이지의 각 기능, Mac에서 필요한 플랜 및 iPhone과 iPad 지원 범위
기능
자동 완성 및 서식 정리를 지원하는 SQL 편집기Mac: 무료iPhone 및 iPad: 구문 강조, Run과 Stop 지원; 자동 완성 없음
쿼리 매개변수Mac: 무료iPhone 및 iPad: 지원되지 않음
쿼리 기록Mac: 무료iPhone 및 iPad: 기기의 최근 200개 쿼리
저장된 쿼리 및 연결된 SQL 폴더Mac: 무료iPhone 및 iPad: 지원되지 않음
빠른 열기Mac: 무료iPhone 및 iPad: 지원되지 않음
EXPLAIN 및 EXPLAIN CompareMac: 무료iPhone 및 iPad: 지원되지 않음
쿼리 분석Mac: Starter 플랜iPhone 및 iPad: 지원되지 않음
결과 차트Mac: Starter 플랜iPhone 및 iPad: 지원되지 않음
지도 보기Mac: 무료iPhone 및 iPad: 지원되지 않음
결과 복사 또는 공유Mac: 무료iPhone 및 iPad: 무료

알아둘 제한 사항

  • Settings에서 상한을 최대 500,000개로 높이거나 ⌘⌥⏎으로 실행하지 않으면 쿼리는 최대 10,000개 행을 반환합니다. 직접 작성한 LIMIT가 항상 우선합니다.
  • 쿼리 기록과 Query Insights는 이 Mac만 대상으로 합니다. 다른 Mac이나 iPhone에서 실행한 쿼리는 포함되지 않습니다.
  • tablepro 셸 명령은 앱에서 연결과 파일을 엽니다. 터미널에서 쿼리를 실행하지는 않습니다.

TablePro 받기

TablePro는 오픈 소스이며 무료로 사용할 수 있습니다. 유료 플랜은 Mac 앱에 선택 기능을 추가합니다.
Mac용 다운로드

macOS 13 Ventura 이상Apple silicon 또는 Intel

App Store에서 다운로드

iPhone 및 iPadiOS 및 iPadOS 18 이상

요금 보기