Skip to content

Presto SQL Parser Support in GSP

Explore the Presto SQL Parser product page

This page documents the SQL syntax support for Presto in the General SQL Parser.

Syntax Coverage Corpus

GSP tests Presto syntax against 66 documented constructs grouped into 24 categories, each cross-referenced to the documentation that defines it (52 distinct source pages).

Parse coverage

Measured against GSP Java 4.2.8 on 2026-08-31 (UTC) (artifact sha256 1117856ef134). Each construct below carries the complete set of examples from the Presto documentation; a construct counts as fully covered only when every one of its examples parses. Percentages are pass rates over this documented-example corpus — not a percentage of the entire SQL dialect.

Constructs fully parsed Individual statements parsed
All constructs 66 of 66 (100%) 157 of 157 (100%)
SELECT (queries) 16 of 16 (100%) 41 of 41 (100%)
DML (INSERT / UPDATE / DELETE / MERGE) 2 of 2 (100%) 8 of 8 (100%)
Stored procedures 1 of 1 (100%) 3 of 3 (100%)

Statements are split using the parser's own statement splitter, so multi-statement examples and procedure bodies are counted correctly. The SELECT, DML and stored-procedure rows classify each statement by its parsed statement type: a construct is counted in a row when its examples contain at least one statement of that class, and is fully parsed when all of them parse. Stored procedures covers CREATE PROCEDURE / FUNCTION / PACKAGE / TRIGGER definitions and anonymous blocks.

Machine-readable: dialect data (JSON) · all-dialect matrix · coverage matrix overview

All 66 constructs

Construct Category Parses Specified in
ALTER FUNCTION ALTER all 1 Presto docs
ALTER SCHEMA ALTER all 1 Presto docs
ALTER TABLE ALTER all 8 Presto docs
ANALYZE ANALYZE all 4 Presto docs
CALL CALL all 3 Presto docs
COMMIT COMMIT all 2 Presto docs
CREATE FUNCTION CREATE all 3 Presto docs
CREATE ROLE CREATE all 2 Presto docs
CREATE SCHEMA CREATE all 3 Presto docs
CREATE TABLE CREATE all 3 Presto docs
CREATE TABLE AS CREATE all 4 Presto docs
CREATE VIEW CREATE all 3 Presto docs
DEALLOCATE PREPARE DEALLOCATE all 1 Presto docs
DELETE DELETE all 3 Presto docs
DESCRIBE DESCRIBE all 1 Presto docs
DESCRIBE INPUT DESCRIBE all 2 Presto docs
DESCRIBE OUTPUT DESCRIBE all 3 Presto docs
DROP FUNCTION DROP all 3 Presto docs
DROP ROLE DROP all 1 Presto docs
DROP SCHEMA DROP all 2 Presto docs
DROP TABLE DROP all 2 Presto docs
DROP VIEW DROP all 2 Presto docs
EXECUTE EXECUTE all 4 Presto docs
EXPLAIN EXPLAIN all 4 Presto docs
EXPLAIN ANALYZE EXPLAIN all 2 Presto docs
GRANT GRANT all 3 Presto docs
GRANT ROLES GRANT all 2 Presto docs
INSERT INSERT all 5 Presto docs
PREPARE PREPARE all 3 Presto docs
RESET SESSION RESET all 2 Presto docs
REVOKE REVOKE all 3 Presto docs
REVOKE ROLES REVOKE all 2 Presto docs
ROLLBACK ROLLBACK all 2 Presto docs
SELECT /JOINS/USING SELECT all 4 Presto docs
SELECT /Scalar Subquery SELECT all 1 Presto docs
SELECT /WHERE EXISTS SELECT all 1 Presto docs
SELECT /WHERE IN SELECT all 1 Presto docs
SELECT CROSS JOIN SELECT all 2 Presto docs
SELECT GROUP BY Clause SELECT all 3 Presto docs
SELECT HAVING Clause SELECT all 2 Presto docs
SELECT JOINS SELECT all 3 Presto docs
SELECT LIMIT Clause SELECT all 2 Presto docs
SELECT OFFSET Clause SELECT all 1 Presto docs
SELECT TABLESAMPLE SELECT all 3 Presto docs
SELECT UNION \| INTERSECT \| EXCEPT Clause SELECT all 5 Presto docs
SELECT UNNEST SELECT all 4 Presto docs
SELECT WITH Clause SELECT all 4 Presto docs
SELECT/JOINS/Qualifying Column Names SELECT all 4 Presto docs
SET ROLE SET ROLE all 1 Presto docs
SET SESSION SET SESSION all 2 Presto docs
SHOW CATALOGS SHOW all 1 Presto docs
SHOW COLUMNS SHOW all 1 Presto docs
SHOW CREATE FUNCTION SHOW all 2 Presto docs
SHOW CREATE TABLE SHOW all 1 Presto docs
SHOW CREATE VIEW SHOW all 1 Presto docs
SHOW FUNCTIONS SHOW all 1 Presto docs
SHOW GRANTS SHOW all 2 Presto docs
SHOW ROLE GRANTS SHOW all 1 Presto docs
SHOW ROLES SHOW all 2 Presto docs
SHOW SCHEMAS SHOW all 1 Presto docs
SHOW SESSION SHOW all 1 Presto docs
SHOW STATS SHOW all 1 Presto docs
SHOW TABLES SHOW all 2 Presto docs
START TRANSACTION START TRANSACTION all 5 Presto docs
USE USE all 2 Presto docs
VALUES VALUES all 1 Presto docs

Key Features Supported

  • Standard SQL operations (SELECT, INSERT, UPDATE, DELETE)
  • Presto-specific functions and data types
  • Multi-connector federated queries
  • Window functions and analytical queries
  • Complex data types (ARRAY, MAP, ROW)
  • Cross-catalog join operations