{
  "$schema": "https://docs.sqlparser.com/capabilities/v1/schema/dialect.schema.json",
  "dialect": "flink",
  "display_name": "Flink SQL",
  "aliases": [],
  "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": 39,
    "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": 18, "total": 39},
    "statements": {"passed": 87, "total": 129},
    "statement_classes": {
      "select": {"constructs": {"passed": 6, "total": 13}, "statements": {"passed": 33, "total": 44}},
      "dml": {"constructs": {"passed": 2, "total": 2}, "statements": {"passed": 6, "total": 6}},
      "stored_procedures": {"constructs": {"passed": 0, "total": 1}, "statements": {"passed": 2, "total": 5}}
    }
  },
  "keywords": {
    "kind": "measured",
    "measured_at": "2026-07-29T23:46:37Z",
    "total": 312,
    "allowed_as_identifier": 309,
    "context_specific": 2,
    "blocked": 1,
    "details_url": "https://docs.sqlparser.com/reference/sql-syntax/flink/keyword-compatibility/"
  },
  "docs_url": "https://docs.sqlparser.com/reference/sql-syntax/flink/",
  "constructs": [
    {"name": "ALTER DATABASE", "category": "ALTER", "passed": 0, "total": 1, "source": "https://nightlies.apache.org/flink/flink-docs-release-1.20/docs/dev/table/sql/alter/"},
    {"name": "ALTER FUNCTION", "category": "ALTER", "passed": 1, "total": 2, "source": "https://nightlies.apache.org/flink/flink-docs-release-1.20/docs/dev/table/sql/alter/"},
    {"name": "ALTER TABLE", "category": "ALTER", "passed": 2, "total": 6, "source": "https://nightlies.apache.org/flink/flink-docs-release-1.20/docs/dev/table/sql/alter/"},
    {"name": "ALTER VIEW", "category": "ALTER", "passed": 2, "total": 2, "source": "https://nightlies.apache.org/flink/flink-docs-release-1.20/docs/dev/table/sql/alter/"},
    {"name": "CREATE CATALOG", "category": "CREATE", "passed": 2, "total": 2, "source": "https://nightlies.apache.org/flink/flink-docs-release-1.20/docs/dev/table/sql/create/"},
    {"name": "CREATE DATABASE", "category": "CREATE", "passed": 1, "total": 2, "source": "https://nightlies.apache.org/flink/flink-docs-release-1.20/docs/dev/table/sql/create/"},
    {"name": "CREATE FUNCTION", "category": "CREATE", "passed": 2, "total": 5, "source": "https://nightlies.apache.org/flink/flink-docs-release-1.20/docs/dev/table/sql/create/"},
    {"name": "CREATE TABLE", "category": "CREATE", "passed": 4, "total": 6, "source": "https://nightlies.apache.org/flink/flink-docs-release-1.20/docs/dev/table/sql/create/"},
    {"name": "CREATE TABLE AS SELECT", "category": "CREATE", "passed": 2, "total": 2, "source": "https://nightlies.apache.org/flink/flink-docs-release-1.20/docs/dev/table/sql/create/"},
    {"name": "CREATE TABLE LIKE", "category": "CREATE", "passed": 2, "total": 2, "source": "https://nightlies.apache.org/flink/flink-docs-release-1.20/docs/dev/table/sql/create/"},
    {"name": "CREATE VIEW", "category": "CREATE", "passed": 2, "total": 2, "source": "https://nightlies.apache.org/flink/flink-docs-release-1.20/docs/dev/table/sql/create/"},
    {"name": "DESCRIBE", "category": "DESCRIBE", "passed": 3, "total": 5, "source": "https://nightlies.apache.org/flink/flink-docs-release-1.20/docs/dev/table/sql/describe/"},
    {"name": "DROP CATALOG", "category": "DROP", "passed": 1, "total": 1, "source": "https://nightlies.apache.org/flink/flink-docs-release-1.20/docs/dev/table/sql/drop/"},
    {"name": "DROP DATABASE", "category": "DROP", "passed": 2, "total": 2, "source": "https://nightlies.apache.org/flink/flink-docs-release-1.20/docs/dev/table/sql/drop/"},
    {"name": "DROP FUNCTION", "category": "DROP", "passed": 1, "total": 2, "source": "https://nightlies.apache.org/flink/flink-docs-release-1.20/docs/dev/table/sql/drop/"},
    {"name": "DROP TABLE", "category": "DROP", "passed": 1, "total": 2, "source": "https://nightlies.apache.org/flink/flink-docs-release-1.20/docs/dev/table/sql/drop/"},
    {"name": "DROP VIEW", "category": "DROP", "passed": 1, "total": 2, "source": "https://nightlies.apache.org/flink/flink-docs-release-1.20/docs/dev/table/sql/drop/"},
    {"name": "EXPLAIN", "category": "EXPLAIN", "passed": 3, "total": 3, "source": "https://nightlies.apache.org/flink/flink-docs-release-1.20/docs/dev/table/sql/explain/"},
    {"name": "EXECUTE STATEMENT SET", "category": "INSERT", "passed": 1, "total": 3, "source": "https://nightlies.apache.org/flink/flink-docs-release-1.20/docs/dev/table/sql/insert/"},
    {"name": "INSERT", "category": "INSERT", "passed": 5, "total": 5, "source": "https://nightlies.apache.org/flink/flink-docs-release-1.20/docs/dev/table/sql/insert/"},
    {"name": "RESET", "category": "RESET", "passed": 2, "total": 2, "source": "https://nightlies.apache.org/flink/flink-docs-release-1.20/docs/dev/table/sql/reset/"},
    {"name": "SELECT", "category": "SELECT", "passed": 5, "total": 6, "source": "https://nightlies.apache.org/flink/flink-docs-release-1.20/docs/dev/table/sql/queries/overview/"},
    {"name": "SELECT Group Aggregation", "category": "SELECT", "passed": 4, "total": 5, "source": "https://nightlies.apache.org/flink/flink-docs-release-1.20/docs/dev/table/sql/queries/group-agg/"},
    {"name": "SELECT JOIN", "category": "SELECT", "passed": 4, "total": 6, "source": "https://nightlies.apache.org/flink/flink-docs-release-1.20/docs/dev/table/sql/queries/joins/"},
    {"name": "SELECT Lateral Table Join", "category": "SELECT", "passed": 0, "total": 2, "source": "https://nightlies.apache.org/flink/flink-docs-release-1.20/docs/dev/table/sql/queries/joins/"},
    {"name": "SELECT LIMIT", "category": "SELECT", "passed": 1, "total": 1, "source": "https://nightlies.apache.org/flink/flink-docs-release-1.20/docs/dev/table/sql/queries/limit/"},
    {"name": "SELECT MATCH_RECOGNIZE", "category": "SELECT", "passed": 0, "total": 2, "source": "https://nightlies.apache.org/flink/flink-docs-release-1.20/docs/dev/table/sql/queries/match_recognize/"},
    {"name": "SELECT ORDER BY", "category": "SELECT", "passed": 1, "total": 1, "source": "https://nightlies.apache.org/flink/flink-docs-release-1.20/docs/dev/table/sql/queries/orderby/"},
    {"name": "SELECT Over Aggregation", "category": "SELECT", "passed": 2, "total": 3, "source": "https://nightlies.apache.org/flink/flink-docs-release-1.20/docs/dev/table/sql/queries/over-agg/"},
    {"name": "SELECT Set Operations", "category": "SELECT", "passed": 6, "total": 6, "source": "https://nightlies.apache.org/flink/flink-docs-release-1.20/docs/dev/table/sql/queries/set-ops/"},
    {"name": "SELECT Top-N", "category": "SELECT", "passed": 1, "total": 1, "source": "https://nightlies.apache.org/flink/flink-docs-release-1.20/docs/dev/table/sql/queries/topn/"},
    {"name": "SELECT Window Aggregation", "category": "SELECT", "passed": 5, "total": 5, "source": "https://nightlies.apache.org/flink/flink-docs-release-1.20/docs/dev/table/sql/queries/window-agg/"},
    {"name": "SELECT Windowing TVF (TUMBLE, HOP, CUMULATE, SESSION)", "category": "SELECT", "passed": 4, "total": 6, "source": "https://nightlies.apache.org/flink/flink-docs-release-1.20/docs/dev/table/sql/queries/window-tvf/"},
    {"name": "SELECT WITH (Common Table Expression)", "category": "SELECT", "passed": 1, "total": 1, "source": "https://nightlies.apache.org/flink/flink-docs-release-1.20/docs/dev/table/sql/queries/with/"},
    {"name": "SET", "category": "SET", "passed": 2, "total": 2, "source": "https://nightlies.apache.org/flink/flink-docs-release-1.20/docs/dev/table/sql/set/"},
    {"name": "SHOW", "category": "SHOW", "passed": 1, "total": 6, "source": "https://nightlies.apache.org/flink/flink-docs-release-1.20/docs/dev/table/sql/show/"},
    {"name": "SHOW CREATE, SHOW FUNCTIONS", "category": "SHOW", "passed": 3, "total": 6, "source": "https://nightlies.apache.org/flink/flink-docs-release-1.20/docs/dev/table/sql/show/"},
    {"name": "SHOW TABLES", "category": "SHOW", "passed": 6, "total": 6, "source": "https://nightlies.apache.org/flink/flink-docs-release-1.20/docs/dev/table/sql/show/"},
    {"name": "USE", "category": "USE", "passed": 1, "total": 5, "source": "https://nightlies.apache.org/flink/flink-docs-release-1.20/docs/dev/table/sql/use/"}
  ]
}
