{
  "$schema": "https://docs.sqlparser.com/capabilities/v1/schema/dialect.schema.json",
  "dialect": "presto",
  "display_name": "Presto",
  "aliases": ["prestodb"],
  "product": "General SQL Parser",
  "edition": "java",
  "version": "4.1.9",
  "measured_at": "2026-08-03T03:25:59.446114891Z",
  "provenance": {
    "kind": "measured",
    "artifact_sha256": "9bf7ca575030",
    "corpus_commit": "8bce26814",
    "corpus_files": 66,
    "methodology_url": "https://docs.sqlparser.com/reference/sql-syntax/#methodology"
  },
  "parse_coverage": {
    "kind": "measured",
    "note": "Pass rates are over GSP's documented-example corpus for this dialect, not a percentage of the entire SQL dialect.",
    "constructs": {"passed": 66, "total": 66},
    "statements": {"passed": 157, "total": 157},
    "statement_classes": {
      "select": {"constructs": {"passed": 16, "total": 16}, "statements": {"passed": 41, "total": 41}},
      "dml": {"constructs": {"passed": 2, "total": 2}, "statements": {"passed": 8, "total": 8}},
      "stored_procedures": {"constructs": {"passed": 1, "total": 1}, "statements": {"passed": 3, "total": 3}}
    }
  },
  "keywords": {
    "kind": "measured",
    "measured_at": "2026-07-29T23:46:37Z",
    "total": 519,
    "allowed_as_identifier": 516,
    "context_specific": 2,
    "blocked": 1,
    "details_url": "https://docs.sqlparser.com/reference/sql-syntax/presto/keyword-compatibility/"
  },
  "docs_url": "https://docs.sqlparser.com/reference/sql-syntax/presto/",
  "constructs": [
    {"name": "ALTER FUNCTION", "category": "ALTER", "passed": 1, "total": 1, "source": "https://prestodb.io/docs/current/sql/alter-function.html"},
    {"name": "ALTER SCHEMA", "category": "ALTER", "passed": 1, "total": 1, "source": "https://prestodb.io/docs/current/sql/alter-schema.html"},
    {"name": "ALTER TABLE", "category": "ALTER", "passed": 8, "total": 8, "source": "https://prestodb.io/docs/current/sql/alter-table.html"},
    {"name": "ANALYZE", "category": "ANALYZE", "passed": 4, "total": 4, "source": "https://prestodb.io/docs/current/sql/analyze.html"},
    {"name": "CALL", "category": "CALL", "passed": 3, "total": 3, "source": "https://prestodb.io/docs/current/sql/call.html"},
    {"name": "COMMIT", "category": "COMMIT", "passed": 2, "total": 2, "source": "https://prestodb.io/docs/current/sql/commit.html"},
    {"name": "CREATE FUNCTION", "category": "CREATE", "passed": 3, "total": 3, "source": "https://prestodb.io/docs/current/sql/create-function.html"},
    {"name": "CREATE ROLE", "category": "CREATE", "passed": 2, "total": 2, "source": "https://prestodb.io/docs/current/sql/create-role.html"},
    {"name": "CREATE SCHEMA", "category": "CREATE", "passed": 3, "total": 3, "source": "https://prestodb.io/docs/current/sql/create-schema.html"},
    {"name": "CREATE TABLE", "category": "CREATE", "passed": 3, "total": 3, "source": "https://prestodb.io/docs/current/sql/create-table.html"},
    {"name": "CREATE TABLE AS", "category": "CREATE", "passed": 4, "total": 4, "source": "https://prestodb.io/docs/current/sql/create-table-as.html"},
    {"name": "CREATE VIEW", "category": "CREATE", "passed": 3, "total": 3, "source": "https://prestodb.io/docs/current/sql/create-view.html"},
    {"name": "DEALLOCATE PREPARE", "category": "DEALLOCATE", "passed": 1, "total": 1, "source": "https://prestodb.io/docs/current/sql/deallocate-prepare.html"},
    {"name": "DELETE", "category": "DELETE", "passed": 3, "total": 3, "source": "https://prestodb.io/docs/current/sql/delete.html"},
    {"name": "DESCRIBE", "category": "DESCRIBE", "passed": 1, "total": 1, "source": "https://prestodb.io/docs/current/sql/describe.html"},
    {"name": "DESCRIBE INPUT", "category": "DESCRIBE", "passed": 2, "total": 2, "source": "https://prestodb.io/docs/current/sql/describe-input.html"},
    {"name": "DESCRIBE OUTPUT", "category": "DESCRIBE", "passed": 3, "total": 3, "source": "https://prestodb.io/docs/current/sql/describe-output.html"},
    {"name": "DROP FUNCTION", "category": "DROP", "passed": 3, "total": 3, "source": "https://prestodb.io/docs/current/sql/drop-function.html"},
    {"name": "DROP ROLE", "category": "DROP", "passed": 1, "total": 1, "source": "https://prestodb.io/docs/current/sql/drop-role.html"},
    {"name": "DROP SCHEMA", "category": "DROP", "passed": 2, "total": 2, "source": "https://prestodb.io/docs/current/sql/drop-schema.html"},
    {"name": "DROP TABLE", "category": "DROP", "passed": 2, "total": 2, "source": "https://prestodb.io/docs/current/sql/drop-table.html"},
    {"name": "DROP VIEW", "category": "DROP", "passed": 2, "total": 2, "source": "https://prestodb.io/docs/current/sql/drop-view.html"},
    {"name": "EXECUTE", "category": "EXECUTE", "passed": 4, "total": 4, "source": "https://prestodb.io/docs/current/sql/execute.html"},
    {"name": "EXPLAIN", "category": "EXPLAIN", "passed": 4, "total": 4, "source": "https://prestodb.io/docs/current/sql/explain.html"},
    {"name": "EXPLAIN ANALYZE", "category": "EXPLAIN", "passed": 2, "total": 2, "source": "https://prestodb.io/docs/current/sql/explain-analyze.html"},
    {"name": "GRANT", "category": "GRANT", "passed": 3, "total": 3, "source": "https://prestodb.io/docs/current/sql/grant.html"},
    {"name": "GRANT ROLES", "category": "GRANT", "passed": 2, "total": 2, "source": "https://prestodb.io/docs/current/sql/grant-roles.html"},
    {"name": "INSERT", "category": "INSERT", "passed": 5, "total": 5, "source": "https://prestodb.io/docs/current/sql/insert.html"},
    {"name": "PREPARE", "category": "PREPARE", "passed": 3, "total": 3, "source": "https://prestodb.io/docs/current/sql/prepare.html"},
    {"name": "RESET SESSION", "category": "RESET", "passed": 2, "total": 2, "source": "https://prestodb.io/docs/current/sql/reset-session.html"},
    {"name": "REVOKE", "category": "REVOKE", "passed": 3, "total": 3, "source": "https://prestodb.io/docs/current/sql/revoke.html"},
    {"name": "REVOKE ROLES", "category": "REVOKE", "passed": 2, "total": 2, "source": "https://prestodb.io/docs/current/sql/revoke-roles.html"},
    {"name": "ROLLBACK", "category": "ROLLBACK", "passed": 2, "total": 2, "source": "https://prestodb.io/docs/current/sql/rollback.html"},
    {"name": "SELECT /JOINS/USING", "category": "SELECT", "passed": 4, "total": 4, "source": "https://prestodb.io/docs/current/sql/select.html"},
    {"name": "SELECT /Scalar Subquery", "category": "SELECT", "passed": 1, "total": 1, "source": "https://prestodb.io/docs/current/sql/select.html"},
    {"name": "SELECT /WHERE EXISTS", "category": "SELECT", "passed": 1, "total": 1, "source": "https://prestodb.io/docs/current/sql/select.html"},
    {"name": "SELECT /WHERE IN", "category": "SELECT", "passed": 1, "total": 1, "source": "https://prestodb.io/docs/current/sql/select.html"},
    {"name": "SELECT CROSS JOIN", "category": "SELECT", "passed": 2, "total": 2, "source": "https://prestodb.io/docs/current/sql/select.html"},
    {"name": "SELECT GROUP BY Clause", "category": "SELECT", "passed": 3, "total": 3, "source": "https://prestodb.io/docs/current/sql/select.html"},
    {"name": "SELECT HAVING Clause", "category": "SELECT", "passed": 2, "total": 2, "source": "https://prestodb.io/docs/current/sql/select.html"},
    {"name": "SELECT JOINS", "category": "SELECT", "passed": 3, "total": 3, "source": "https://prestodb.io/docs/current/sql/select.html"},
    {"name": "SELECT LIMIT Clause", "category": "SELECT", "passed": 2, "total": 2, "source": "https://prestodb.io/docs/current/sql/select.html"},
    {"name": "SELECT OFFSET Clause", "category": "SELECT", "passed": 1, "total": 1, "source": "https://prestodb.io/docs/current/sql/select.html"},
    {"name": "SELECT TABLESAMPLE", "category": "SELECT", "passed": 3, "total": 3, "source": "https://prestodb.io/docs/current/sql/select.html"},
    {"name": "SELECT UNION | INTERSECT | EXCEPT Clause", "category": "SELECT", "passed": 5, "total": 5, "source": "https://prestodb.io/docs/current/sql/select.html"},
    {"name": "SELECT UNNEST", "category": "SELECT", "passed": 4, "total": 4, "source": "https://prestodb.io/docs/current/sql/select.html"},
    {"name": "SELECT WITH Clause", "category": "SELECT", "passed": 4, "total": 4, "source": "https://prestodb.io/docs/current/sql/select.html"},
    {"name": "SELECT/JOINS/Qualifying Column Names", "category": "SELECT", "passed": 4, "total": 4, "source": "https://prestodb.io/docs/current/sql/select.html"},
    {"name": "SET ROLE", "category": "SET ROLE", "passed": 1, "total": 1, "source": "https://prestodb.io/docs/current/sql/set-role.html"},
    {"name": "SET SESSION", "category": "SET SESSION", "passed": 2, "total": 2, "source": "https://prestodb.io/docs/current/sql/set-session.html"},
    {"name": "SHOW CATALOGS", "category": "SHOW", "passed": 1, "total": 1, "source": "https://prestodb.io/docs/current/sql/show-catalogs.html"},
    {"name": "SHOW COLUMNS", "category": "SHOW", "passed": 1, "total": 1, "source": "https://prestodb.io/docs/current/sql/show-columns.html"},
    {"name": "SHOW CREATE FUNCTION", "category": "SHOW", "passed": 2, "total": 2, "source": "https://prestodb.io/docs/current/sql/show-create-function.html"},
    {"name": "SHOW CREATE TABLE", "category": "SHOW", "passed": 1, "total": 1, "source": "https://prestodb.io/docs/current/sql/show-create-table.html"},
    {"name": "SHOW CREATE VIEW", "category": "SHOW", "passed": 1, "total": 1, "source": "https://prestodb.io/docs/current/sql/show-create-view.html"},
    {"name": "SHOW FUNCTIONS", "category": "SHOW", "passed": 1, "total": 1, "source": "https://prestodb.io/docs/current/sql/show-functions.html"},
    {"name": "SHOW GRANTS", "category": "SHOW", "passed": 2, "total": 2, "source": "https://prestodb.io/docs/current/sql/show-grants.html"},
    {"name": "SHOW ROLE GRANTS", "category": "SHOW", "passed": 1, "total": 1, "source": "https://prestodb.io/docs/current/sql/show-role-grants.html"},
    {"name": "SHOW ROLES", "category": "SHOW", "passed": 2, "total": 2, "source": "https://prestodb.io/docs/current/sql/show-roles.html"},
    {"name": "SHOW SCHEMAS", "category": "SHOW", "passed": 1, "total": 1, "source": "https://prestodb.io/docs/current/sql/show-schemas.html"},
    {"name": "SHOW SESSION", "category": "SHOW", "passed": 1, "total": 1, "source": "https://prestodb.io/docs/current/sql/show-session.html"},
    {"name": "SHOW STATS", "category": "SHOW", "passed": 1, "total": 1, "source": "https://prestodb.io/docs/current/sql/show-stats.html"},
    {"name": "SHOW TABLES", "category": "SHOW", "passed": 2, "total": 2, "source": "https://prestodb.io/docs/current/sql/show-tables.html"},
    {"name": "START TRANSACTION", "category": "START TRANSACTION", "passed": 5, "total": 5, "source": "https://prestodb.io/docs/current/sql/start-transaction.html"},
    {"name": "USE", "category": "USE", "passed": 2, "total": 2, "source": "https://prestodb.io/docs/current/sql/use.html"},
    {"name": "VALUES", "category": "VALUES", "passed": 1, "total": 1, "source": "https://prestodb.io/docs/current/sql/values.html"}
  ]
}
