{
  "$schema": "https://docs.sqlparser.com/capabilities/v2/schema/dialect-manifest.schema.json",
  "schemaVersion": "2",
  "manifestVersion": "2.5.9",
  "releasedAt": "2026-08-30",
  "product": {
    "id": "gsp",
    "name": "General SQL Parser"
  },
  "engines": {
    "java": {
      "version": "4.2.8"
    },
    "dotnet": {
      "version": "4.1.0.7"
    }
  },
  "groups": [
    {
      "id": "mainstream-enterprise",
      "name": "Mainstream and enterprise databases",
      "order": 1
    },
    {
      "id": "cloud-analytics",
      "name": "Cloud warehouses and analytics",
      "order": 2
    },
    {
      "id": "big-data-query-engines",
      "name": "Big data and query engines",
      "order": 3
    },
    {
      "id": "specialized-languages-interfaces",
      "name": "Specialized languages and interfaces",
      "order": 4
    }
  ],
  "outputDefinitions": [
    {
      "id": "syntax",
      "name": "Syntax validation",
      "description": "Parse validity, diagnostics, and parser errors."
    },
    {
      "id": "statements",
      "name": "Statement structure",
      "description": "Statement types and parsed statement structure."
    },
    {
      "id": "objects",
      "name": "Database objects",
      "description": "Tables, columns, and other referenced database objects."
    },
    {
      "id": "ast",
      "name": "Abstract syntax tree",
      "description": "The parser abstract syntax tree."
    },
    {
      "id": "lineage",
      "name": "Data lineage preview",
      "description": "Bounded SQL-only column lineage with explicit completeness diagnostics."
    }
  ],
  "dialects": [
    {
      "id": "oracle",
      "aliases": [],
      "name": "Oracle",
      "group": "mainstream-enterprise",
      "edbVendor": "dbvoracle",
      "support": {
        "java": true,
        "dotnet": true
      },
      "sample": {
        "title": "PL/SQL package body",
        "language": "sql",
        "text": "CREATE OR REPLACE PACKAGE BODY hr.emp_mgmt AS\n  PROCEDURE raise_salary(p_id NUMBER, p_pct NUMBER) IS\n  BEGIN\n    UPDATE employees SET salary = salary * (1 + p_pct / 100)\n    WHERE employee_id = p_id;\n  END;\nEND emp_mgmt;",
        "parameters": {},
        "expect": {
          "statementTypes": [
            "sstplsql_createpackage"
          ],
          "requiredTables": [
            "employees"
          ],
          "requiredColumns": [
            "salary",
            "employee_id"
          ]
        }
      },
      "docs": {
        "slug": "oracle",
        "url": "https://docs.sqlparser.com/reference/sql-syntax/oracle/"
      },
      "pricingSlug": "oracle",
      "supportedOutputs": [
        "syntax",
        "statements",
        "objects",
        "ast",
        "lineage"
      ],
      "specialParameters": [],
      "surfaces": {
        "playground": {
          "enabled": true,
          "order": 2
        },
        "pricing": {
          "enabled": true,
          "order": 1
        },
        "dialectPage": {
          "enabled": true
        }
      }
    },
    {
      "id": "mssql",
      "aliases": [
        "sqlserver",
        "tsql",
        "sql-server"
      ],
      "name": "SQL Server (T-SQL)",
      "group": "mainstream-enterprise",
      "edbVendor": "dbvmssql",
      "support": {
        "java": true,
        "dotnet": true
      },
      "sample": {
        "title": "T-SQL procedure with MERGE",
        "language": "sql",
        "text": "CREATE PROCEDURE dbo.usp_sync_target @id INT AS\nBEGIN TRY\n  MERGE dbo.target AS t USING dbo.source AS s ON t.id = s.id\n  WHEN MATCHED THEN UPDATE SET t.val = s.val;\nEND TRY\nBEGIN CATCH THROW; END CATCH;",
        "parameters": {},
        "expect": {
          "statementTypes": [
            "sstmssqlcreateprocedure"
          ],
          "requiredTables": [
            "dbo.target",
            "dbo.source"
          ],
          "requiredColumns": [
            "id",
            "val"
          ]
        }
      },
      "docs": {
        "slug": "sqlserver",
        "url": "https://docs.sqlparser.com/reference/sql-syntax/sqlserver/"
      },
      "pricingSlug": "tsql",
      "supportedOutputs": [
        "syntax",
        "statements",
        "objects",
        "ast",
        "lineage"
      ],
      "specialParameters": [],
      "surfaces": {
        "playground": {
          "enabled": true,
          "order": 3
        },
        "pricing": {
          "enabled": true,
          "order": 2
        },
        "dialectPage": {
          "enabled": true
        }
      }
    },
    {
      "id": "azuresql",
      "aliases": [
        "azure"
      ],
      "name": "Azure SQL",
      "group": "mainstream-enterprise",
      "edbVendor": "dbvazuresql",
      "support": {
        "java": true,
        "dotnet": false
      },
      "sample": {
        "title": "External table",
        "language": "sql",
        "text": "CREATE EXTERNAL TABLE ClickStream (\n  url varchar(50), event_date date, user_ip varchar(50)\n) WITH (\n  LOCATION='/webdata/events.csv',\n  DATA_SOURCE=analytics_source,\n  FILE_FORMAT=csv_format\n);",
        "parameters": {},
        "expect": {
          "statementTypes": [
            "sstcreatetable"
          ],
          "requiredTables": [
            "ClickStream"
          ],
          "requiredColumns": [
            "url",
            "event_date",
            "user_ip"
          ]
        }
      },
      "docs": {
        "slug": null,
        "url": null
      },
      "pricingSlug": "azuresql",
      "supportedOutputs": [
        "syntax",
        "statements",
        "objects",
        "ast",
        "lineage"
      ],
      "specialParameters": [],
      "surfaces": {
        "playground": {
          "enabled": true,
          "order": 9
        },
        "pricing": {
          "enabled": true,
          "order": 27
        },
        "dialectPage": {
          "enabled": true
        }
      }
    },
    {
      "id": "mysql",
      "aliases": [],
      "name": "MySQL",
      "group": "mainstream-enterprise",
      "edbVendor": "dbvmysql",
      "support": {
        "java": true,
        "dotnet": true
      },
      "sample": {
        "title": "Stored procedure with joined UPDATE",
        "language": "sql",
        "text": "CREATE PROCEDURE sync_totals()\nBEGIN\n  DECLARE done INT DEFAULT 0;\n  UPDATE totals t JOIN orders o ON o.cid = t.cid SET t.amt = o.amt;\nEND",
        "parameters": {},
        "expect": {
          "statementTypes": [
            "sstcreateprocedure"
          ],
          "requiredTables": [
            "totals",
            "orders"
          ],
          "requiredColumns": [
            "cid",
            "amt"
          ]
        }
      },
      "docs": {
        "slug": "mysql",
        "url": "https://docs.sqlparser.com/reference/sql-syntax/mysql/"
      },
      "pricingSlug": "mysql",
      "supportedOutputs": [
        "syntax",
        "statements",
        "objects",
        "ast",
        "lineage"
      ],
      "specialParameters": [],
      "surfaces": {
        "playground": {
          "enabled": true,
          "order": 4
        },
        "pricing": {
          "enabled": true,
          "order": 3
        },
        "dialectPage": {
          "enabled": true
        }
      }
    },
    {
      "id": "postgresql",
      "aliases": [
        "postgres",
        "pgsql"
      ],
      "name": "PostgreSQL",
      "group": "mainstream-enterprise",
      "edbVendor": "dbvpostgresql",
      "support": {
        "java": true,
        "dotnet": true
      },
      "sample": {
        "title": "PL/pgSQL function",
        "language": "sql",
        "text": "CREATE FUNCTION add_tax(amount numeric) RETURNS numeric AS $$\nBEGIN\n  RETURN amount * 1.08;\nEND;\n$$ LANGUAGE plpgsql;",
        "parameters": {},
        "expect": {
          "statementTypes": [
            "sstcreatefunction"
          ],
          "requiredTables": [],
          "requiredColumns": []
        }
      },
      "docs": {
        "slug": "postgresql",
        "url": "https://docs.sqlparser.com/reference/sql-syntax/postgresql/"
      },
      "pricingSlug": "postgresql",
      "supportedOutputs": [
        "syntax",
        "statements",
        "objects",
        "ast",
        "lineage"
      ],
      "specialParameters": [],
      "surfaces": {
        "playground": {
          "enabled": true,
          "order": 1
        },
        "pricing": {
          "enabled": true,
          "order": 4
        },
        "dialectPage": {
          "enabled": true
        }
      }
    },
    {
      "id": "db2",
      "aliases": [],
      "name": "IBM Db2",
      "group": "mainstream-enterprise",
      "edbVendor": "dbvdb2",
      "support": {
        "java": true,
        "dotnet": true
      },
      "sample": {
        "title": "SQL PL procedure",
        "language": "sql",
        "text": "CREATE PROCEDURE update_salary(IN p_id INT)\nBEGIN\n  DECLARE v_count INT DEFAULT 0;\n  UPDATE staff SET salary = salary * 1.05 WHERE id = p_id;\nEND",
        "parameters": {},
        "expect": {
          "statementTypes": [
            "sstcreateprocedure"
          ],
          "requiredTables": [
            "staff"
          ],
          "requiredColumns": [
            "salary",
            "id"
          ]
        }
      },
      "docs": {
        "slug": "db2",
        "url": "https://docs.sqlparser.com/reference/sql-syntax/db2/"
      },
      "pricingSlug": "db2",
      "supportedOutputs": [
        "syntax",
        "statements",
        "objects",
        "ast",
        "lineage"
      ],
      "specialParameters": [],
      "surfaces": {
        "playground": {
          "enabled": true,
          "order": 7
        },
        "pricing": {
          "enabled": true,
          "order": 5
        },
        "dialectPage": {
          "enabled": true
        }
      }
    },
    {
      "id": "hana",
      "aliases": [],
      "name": "SAP HANA",
      "group": "mainstream-enterprise",
      "edbVendor": "dbvhana",
      "support": {
        "java": true,
        "dotnet": false
      },
      "sample": {
        "title": "SQLScript procedure",
        "language": "sql",
        "text": "CREATE PROCEDURE top_customers(OUT result INT)\nLANGUAGE SQLSCRIPT AS\nBEGIN\n  SELECT COUNT(*) INTO result FROM customers;\nEND",
        "parameters": {},
        "expect": {
          "statementTypes": [
            "sstcreateprocedure"
          ],
          "requiredTables": [
            "customers"
          ],
          "requiredColumns": []
        }
      },
      "docs": {
        "slug": "hana",
        "url": "https://docs.sqlparser.com/reference/sql-syntax/hana/"
      },
      "pricingSlug": "hana",
      "supportedOutputs": [
        "syntax",
        "statements",
        "objects",
        "ast",
        "lineage"
      ],
      "specialParameters": [],
      "surfaces": {
        "playground": {
          "enabled": true,
          "order": 10
        },
        "pricing": {
          "enabled": true,
          "order": 13
        },
        "dialectPage": {
          "enabled": true
        }
      }
    },
    {
      "id": "sybase",
      "aliases": [],
      "name": "Sybase",
      "group": "mainstream-enterprise",
      "edbVendor": "dbvsybase",
      "support": {
        "java": true,
        "dotnet": true
      },
      "sample": {
        "title": "Transact-SQL procedure",
        "language": "sql",
        "text": "CREATE PROCEDURE update_dept_count @dept INT AS\nBEGIN\n  UPDATE dept SET cnt = (SELECT COUNT(*) FROM emp WHERE emp.dept_id = @dept)\n  WHERE dept.id = @dept\nEND",
        "parameters": {},
        "expect": {
          "statementTypes": [
            "sstmssqlcreateprocedure"
          ],
          "requiredTables": [
            "dept",
            "emp"
          ],
          "requiredColumns": [
            "cnt",
            "dept_id",
            "id"
          ]
        }
      },
      "docs": {
        "slug": "sybase",
        "url": "https://docs.sqlparser.com/reference/sql-syntax/sybase/"
      },
      "pricingSlug": "sybase",
      "supportedOutputs": [
        "syntax",
        "statements",
        "objects",
        "ast",
        "lineage"
      ],
      "specialParameters": [],
      "surfaces": {
        "playground": {
          "enabled": true,
          "order": 11
        },
        "pricing": {
          "enabled": true,
          "order": 14
        },
        "dialectPage": {
          "enabled": true
        }
      }
    },
    {
      "id": "sybasease",
      "aliases": [
        "ase"
      ],
      "name": "Sybase ASE",
      "group": "mainstream-enterprise",
      "edbVendor": "dbvsybasease",
      "support": {
        "java": true,
        "dotnet": false
      },
      "sample": {
        "title": "Transact-SQL procedure",
        "language": "sql",
        "text": "CREATE PROCEDURE update_dept_count @dept INT AS\nBEGIN\n  UPDATE dept SET cnt = (SELECT COUNT(*) FROM emp WHERE emp.dept_id = @dept)\n  WHERE dept.id = @dept\nEND",
        "parameters": {},
        "expect": {
          "statementTypes": [
            "sstmssqlcreateprocedure"
          ],
          "requiredTables": [
            "dept",
            "emp"
          ],
          "requiredColumns": [
            "cnt",
            "dept_id",
            "id"
          ]
        }
      },
      "docs": {
        "slug": "sybasease",
        "url": "https://docs.sqlparser.com/reference/sql-syntax/sybasease/"
      },
      "pricingSlug": "sybasease",
      "supportedOutputs": [
        "syntax",
        "statements",
        "objects",
        "ast",
        "lineage"
      ],
      "specialParameters": [],
      "surfaces": {
        "playground": {
          "enabled": false,
          "order": null
        },
        "pricing": {
          "enabled": true,
          "order": 40
        },
        "dialectPage": {
          "enabled": true
        }
      }
    },
    {
      "id": "sqlanywhere",
      "aliases": [
        "asa"
      ],
      "name": "SAP SQL Anywhere",
      "group": "mainstream-enterprise",
      "edbVendor": "dbvsqlanywhere",
      "support": {
        "java": true,
        "dotnet": false
      },
      "sample": {
        "title": "Watcom-SQL procedure",
        "language": "sql",
        "text": "CREATE PROCEDURE update_dept_count(IN dept INT)\nBEGIN\n  UPDATE dept SET cnt = (SELECT COUNT(*) FROM emp WHERE emp.dept_id = dept)\n  WHERE dept.id = dept;\nEND",
        "parameters": {},
        "expect": {
          "statementTypes": [
            "sstmssqlcreateprocedure"
          ],
          "requiredTables": [
            "dept",
            "emp"
          ],
          "requiredColumns": [
            "cnt",
            "dept_id",
            "id"
          ]
        }
      },
      "docs": {
        "slug": "sqlanywhere",
        "url": "https://docs.sqlparser.com/reference/sql-syntax/sqlanywhere/"
      },
      "pricingSlug": "sqlanywhere",
      "supportedOutputs": [
        "syntax",
        "statements",
        "objects",
        "ast",
        "lineage"
      ],
      "specialParameters": [],
      "surfaces": {
        "playground": {
          "enabled": false,
          "order": null
        },
        "pricing": {
          "enabled": true,
          "order": 41
        },
        "dialectPage": {
          "enabled": true
        }
      }
    },
    {
      "id": "sybaseiq",
      "aliases": [
        "iq"
      ],
      "name": "Sybase IQ",
      "group": "mainstream-enterprise",
      "edbVendor": "dbvsybaseiq",
      "support": {
        "java": true,
        "dotnet": false
      },
      "sample": {
        "title": "IQ high-group index",
        "language": "sql",
        "text": "CREATE HG INDEX ix_prod ON order_items (product_id)",
        "parameters": {},
        "expect": {
          "statementTypes": [
            "sstcreateindex"
          ],
          "requiredTables": [
            "order_items"
          ],
          "requiredColumns": [
            "product_id"
          ]
        }
      },
      "docs": {
        "slug": "sybaseiq",
        "url": "https://docs.sqlparser.com/reference/sql-syntax/sybaseiq/"
      },
      "pricingSlug": "sybaseiq",
      "supportedOutputs": [
        "syntax",
        "statements",
        "objects",
        "ast",
        "lineage"
      ],
      "specialParameters": [],
      "surfaces": {
        "playground": {
          "enabled": false,
          "order": null
        },
        "pricing": {
          "enabled": true,
          "order": 42
        },
        "dialectPage": {
          "enabled": true
        }
      }
    },
    {
      "id": "informix",
      "aliases": [],
      "name": "IBM Informix",
      "group": "mainstream-enterprise",
      "edbVendor": "dbvinformix",
      "support": {
        "java": true,
        "dotnet": true
      },
      "sample": {
        "title": "SPL procedure",
        "language": "sql",
        "text": "CREATE PROCEDURE raise_pay(emp_id INT, pct DECIMAL(5,2))\n  UPDATE employee SET salary = salary * (1 + pct / 100)\n  WHERE id = emp_id;\nEND PROCEDURE;",
        "parameters": {},
        "expect": {
          "statementTypes": [
            "sstinformixCreateProcedure"
          ],
          "requiredTables": [
            "employee"
          ],
          "requiredColumns": [
            "salary",
            "pct",
            "id",
            "emp_id"
          ]
        }
      },
      "docs": {
        "slug": "informix",
        "url": "https://docs.sqlparser.com/reference/sql-syntax/informix/"
      },
      "pricingSlug": "informix",
      "supportedOutputs": [
        "syntax",
        "statements",
        "objects",
        "ast",
        "lineage"
      ],
      "specialParameters": [],
      "surfaces": {
        "playground": {
          "enabled": true,
          "order": 12
        },
        "pricing": {
          "enabled": true,
          "order": 15
        },
        "dialectPage": {
          "enabled": true
        }
      }
    },
    {
      "id": "openedge",
      "aliases": [],
      "name": "Progress OpenEdge",
      "group": "mainstream-enterprise",
      "edbVendor": "dbvopenedge",
      "support": {
        "java": true,
        "dotnet": false
      },
      "sample": {
        "title": "Qualified OpenEdge query",
        "language": "sql",
        "text": "SELECT cust_num,\n  CASE region WHEN 'east' THEN 1 ELSE 0 END\nFROM pub.customer;",
        "parameters": {},
        "expect": {
          "statementTypes": [
            "sstselect"
          ],
          "requiredTables": [
            "pub.customer"
          ],
          "requiredColumns": [
            "cust_num",
            "region"
          ]
        }
      },
      "docs": {
        "slug": "openedge",
        "url": "https://docs.sqlparser.com/reference/sql-syntax/openedge/"
      },
      "pricingSlug": "openedge",
      "supportedOutputs": [
        "syntax",
        "statements",
        "objects",
        "ast",
        "lineage"
      ],
      "specialParameters": [],
      "surfaces": {
        "playground": {
          "enabled": true,
          "order": 13
        },
        "pricing": {
          "enabled": true,
          "order": 20
        },
        "dialectPage": {
          "enabled": true
        }
      }
    },
    {
      "id": "sqlite",
      "aliases": [],
      "name": "SQLite",
      "group": "mainstream-enterprise",
      "edbVendor": "dbvsqlite",
      "support": {
        "java": true,
        "dotnet": false
      },
      "sample": {
        "title": "ATTACH, PRAGMA, and FTS5",
        "language": "sql",
        "text": "ATTACH DATABASE 'archive.db' AS archive;\nPRAGMA foreign_keys = ON;\nCREATE VIRTUAL TABLE docs USING fts5(title, body);",
        "parameters": {},
        "expect": {
          "statementTypes": [
            "sstSqliteAttach",
            "sstSqlitePragma",
            "sstSqliteCreateVirtualTable"
          ],
          "requiredTables": [],
          "requiredColumns": []
        }
      },
      "docs": {
        "slug": "sqlite",
        "url": "https://docs.sqlparser.com/reference/sql-syntax/sqlite/"
      },
      "pricingSlug": "sqlite",
      "supportedOutputs": [
        "syntax",
        "statements",
        "objects",
        "ast",
        "lineage"
      ],
      "specialParameters": [],
      "surfaces": {
        "playground": {
          "enabled": true,
          "order": 14
        },
        "pricing": {
          "enabled": true,
          "order": 26
        },
        "dialectPage": {
          "enabled": true
        }
      }
    },
    {
      "id": "duckdb",
      "aliases": [],
      "name": "DuckDB",
      "group": "mainstream-enterprise",
      "edbVendor": "dbvduckdb",
      "support": {
        "java": true,
        "dotnet": false
      },
      "sample": {
        "title": "PIVOT query",
        "language": "sql",
        "text": "SELECT * FROM cities\nPIVOT (SUM(population) FOR year IN (2000, 2010, 2020));",
        "parameters": {},
        "expect": {
          "statementTypes": [
            "sstselect"
          ],
          "requiredTables": [
            "cities"
          ],
          "requiredColumns": [
            "population",
            "year"
          ]
        }
      },
      "docs": {
        "slug": null,
        "url": null
      },
      "pricingSlug": "duckdb",
      "supportedOutputs": [
        "syntax",
        "statements",
        "objects",
        "ast",
        "lineage"
      ],
      "specialParameters": [],
      "surfaces": {
        "playground": {
          "enabled": true,
          "order": 15
        },
        "pricing": {
          "enabled": true,
          "order": 25
        },
        "dialectPage": {
          "enabled": true
        }
      }
    },
    {
      "id": "edb",
      "aliases": [
        "epas"
      ],
      "name": "EDB Postgres Advanced Server",
      "group": "mainstream-enterprise",
      "edbVendor": "dbvedb",
      "support": {
        "java": true,
        "dotnet": false
      },
      "sample": {
        "title": "Oracle-compatible package",
        "language": "sql",
        "text": "CREATE OR REPLACE PACKAGE emp_pkg IS\n  PROCEDURE hire_emp(p_name VARCHAR2);\n  FUNCTION get_salary(p_id NUMBER) RETURN NUMBER;\nEND emp_pkg;",
        "parameters": {},
        "expect": {
          "statementTypes": [
            "sstplsql_createpackage"
          ],
          "requiredTables": [],
          "requiredColumns": []
        }
      },
      "docs": {
        "slug": null,
        "url": null
      },
      "pricingSlug": "edb",
      "supportedOutputs": [
        "syntax",
        "statements",
        "objects",
        "ast",
        "lineage"
      ],
      "specialParameters": [],
      "surfaces": {
        "playground": {
          "enabled": true,
          "order": 16
        },
        "pricing": {
          "enabled": true,
          "order": 28
        },
        "dialectPage": {
          "enabled": true
        }
      }
    },
    {
      "id": "gaussdb",
      "aliases": [],
      "name": "GaussDB",
      "group": "mainstream-enterprise",
      "edbVendor": "dbvgaussdb",
      "support": {
        "java": true,
        "dotnet": false
      },
      "sample": {
        "title": "EXECUTE DIRECT",
        "language": "sql",
        "text": "EXECUTE DIRECT ON (dn_6001_6002)\n  'SELECT count(*) FROM tpcds.customer_address';",
        "parameters": {},
        "expect": {
          "statementTypes": [
            "sstExecute"
          ],
          "requiredTables": [],
          "requiredColumns": []
        }
      },
      "docs": {
        "slug": "gaussdb",
        "url": "https://docs.sqlparser.com/reference/sql-syntax/gaussdb/"
      },
      "pricingSlug": "gaussdb",
      "supportedOutputs": [
        "syntax",
        "statements",
        "objects",
        "ast",
        "lineage"
      ],
      "specialParameters": [],
      "surfaces": {
        "playground": {
          "enabled": true,
          "order": 17
        },
        "pricing": {
          "enabled": true,
          "order": 29
        },
        "dialectPage": {
          "enabled": true
        }
      }
    },
    {
      "id": "dameng",
      "aliases": [
        "dm"
      ],
      "name": "Dameng Database",
      "group": "mainstream-enterprise",
      "edbVendor": "dbvdameng",
      "support": {
        "java": true,
        "dotnet": false
      },
      "sample": {
        "title": "Class definition",
        "language": "sql",
        "text": "CREATE OR REPLACE CLASS employee_t NOT FINAL IS\n  name VARCHAR2(100);\n  MEMBER FUNCTION get_info RETURN VARCHAR2;\nEND;",
        "parameters": {},
        "expect": {
          "statementTypes": [
            "sstplsql_createtypebody"
          ],
          "requiredTables": [],
          "requiredColumns": []
        }
      },
      "docs": {
        "slug": null,
        "url": null
      },
      "pricingSlug": "dameng",
      "supportedOutputs": [
        "syntax",
        "statements",
        "objects",
        "ast",
        "lineage"
      ],
      "specialParameters": [],
      "surfaces": {
        "playground": {
          "enabled": true,
          "order": 18
        },
        "pricing": {
          "enabled": true,
          "order": 30
        },
        "dialectPage": {
          "enabled": true
        }
      }
    },
    {
      "id": "oceanbase",
      "aliases": [
        "ob"
      ],
      "name": "OceanBase",
      "group": "mainstream-enterprise",
      "edbVendor": "dbvoceanbase",
      "support": {
        "java": true,
        "dotnet": false
      },
      "sample": {
        "title": "MySQL-mode tablegroup",
        "language": "sql",
        "text": "CREATE TABLEGROUP tg_orders\nPRIMARY_ZONE = 'zone1',\nLOCALITY = 'F@zone1,F@zone2,F@zone3',\nBINDING = TRUE\nPARTITION BY HASH PARTITIONS 8;",
        "parameters": {
          "oceanbaseMode": "mysql"
        },
        "expect": {
          "statementTypes": [
            "sstoceanbase_create_tablegroup"
          ],
          "requiredTables": [],
          "requiredColumns": []
        }
      },
      "docs": {
        "slug": null,
        "url": null
      },
      "pricingSlug": "oceanbase",
      "supportedOutputs": [
        "syntax",
        "statements",
        "objects",
        "ast",
        "lineage"
      ],
      "specialParameters": [
        {
          "id": "oceanbaseMode",
          "type": "enum",
          "required": true,
          "values": [
            "mysql",
            "oracle",
            "system"
          ],
          "apiStatus": "planned"
        }
      ],
      "surfaces": {
        "playground": {
          "enabled": true,
          "order": 19
        },
        "pricing": {
          "enabled": true,
          "order": 31
        },
        "dialectPage": {
          "enabled": true
        }
      }
    },
    {
      "id": "snowflake",
      "aliases": [],
      "name": "Snowflake",
      "group": "cloud-analytics",
      "edbVendor": "dbvsnowflake",
      "support": {
        "java": true,
        "dotnet": true
      },
      "sample": {
        "title": "COPY INTO",
        "language": "sql",
        "text": "COPY INTO mytable\nFROM @my_int_stage\nFILE_FORMAT = (TYPE = CSV);",
        "parameters": {},
        "expect": {
          "statementTypes": [
            "sstCopyInto"
          ],
          "requiredTables": [],
          "requiredColumns": []
        }
      },
      "docs": {
        "slug": "snowflake",
        "url": "https://docs.sqlparser.com/reference/sql-syntax/snowflake/"
      },
      "pricingSlug": "snowflake",
      "supportedOutputs": [
        "syntax",
        "statements",
        "objects",
        "ast",
        "lineage"
      ],
      "specialParameters": [],
      "surfaces": {
        "playground": {
          "enabled": true,
          "order": 5
        },
        "pricing": {
          "enabled": true,
          "order": 7
        },
        "dialectPage": {
          "enabled": true
        }
      }
    },
    {
      "id": "bigquery",
      "aliases": [
        "big-query"
      ],
      "name": "Google BigQuery",
      "group": "cloud-analytics",
      "edbVendor": "dbvbigquery",
      "support": {
        "java": true,
        "dotnet": false
      },
      "sample": {
        "title": "UNNEST query",
        "language": "sql",
        "text": "SELECT name, item.sku, SUM(item.qty) AS qty\nFROM `proj.dataset.orders`,\nUNNEST(items) AS item\nGROUP BY name, item.sku;",
        "parameters": {},
        "expect": {
          "statementTypes": [
            "sstselect"
          ],
          "requiredTables": [
            "proj.dataset.orders"
          ],
          "requiredColumns": [
            "name",
            "item.sku",
            "item.qty",
            "items"
          ]
        }
      },
      "docs": {
        "slug": "bigquery",
        "url": "https://docs.sqlparser.com/reference/sql-syntax/bigquery/"
      },
      "pricingSlug": "bigquery",
      "supportedOutputs": [
        "syntax",
        "statements",
        "objects",
        "ast",
        "lineage"
      ],
      "specialParameters": [],
      "surfaces": {
        "playground": {
          "enabled": true,
          "order": 6
        },
        "pricing": {
          "enabled": true,
          "order": 9
        },
        "dialectPage": {
          "enabled": true
        }
      }
    },
    {
      "id": "redshift",
      "aliases": [],
      "name": "Amazon Redshift",
      "group": "cloud-analytics",
      "edbVendor": "dbvredshift",
      "support": {
        "java": true,
        "dotnet": true
      },
      "sample": {
        "title": "COPY from S3",
        "language": "sql",
        "text": "COPY sales\nFROM 's3://mybucket/data/'\nIAM_ROLE 'arn:aws:iam::0123456789:role/MyRole'\nFORMAT AS PARQUET;",
        "parameters": {},
        "expect": {
          "statementTypes": [
            "sstredshiftCopy"
          ],
          "requiredTables": [],
          "requiredColumns": []
        }
      },
      "docs": {
        "slug": "redshift",
        "url": "https://docs.sqlparser.com/reference/sql-syntax/redshift/"
      },
      "pricingSlug": "redshift",
      "supportedOutputs": [
        "syntax",
        "statements",
        "objects",
        "ast",
        "lineage"
      ],
      "specialParameters": [],
      "surfaces": {
        "playground": {
          "enabled": true,
          "order": 20
        },
        "pricing": {
          "enabled": true,
          "order": 8
        },
        "dialectPage": {
          "enabled": true
        }
      }
    },
    {
      "id": "databricks",
      "aliases": [],
      "name": "Databricks",
      "group": "cloud-analytics",
      "edbVendor": "dbvdatabricks",
      "support": {
        "java": true,
        "dotnet": false
      },
      "sample": {
        "title": "Delta Lake maintenance",
        "language": "sql",
        "text": "CONVERT TO DELTA parquet.`/data/events`;\nOPTIMIZE events;\nRESTORE TABLE events TO VERSION AS OF 8;",
        "parameters": {},
        "expect": {
          "statementTypes": [
            "sstConvertToDelta",
            "sstOptimize",
            "sstRestoreTable"
          ],
          "requiredTables": [],
          "requiredColumns": []
        }
      },
      "docs": {
        "slug": "databricks",
        "url": "https://docs.sqlparser.com/reference/sql-syntax/databricks/"
      },
      "pricingSlug": "databricks",
      "supportedOutputs": [
        "syntax",
        "statements",
        "objects",
        "ast",
        "lineage"
      ],
      "specialParameters": [],
      "surfaces": {
        "playground": {
          "enabled": true,
          "order": 21
        },
        "pricing": {
          "enabled": true,
          "order": 22
        },
        "dialectPage": {
          "enabled": true
        }
      }
    },
    {
      "id": "teradata",
      "aliases": [],
      "name": "Teradata",
      "group": "cloud-analytics",
      "edbVendor": "dbvteradata",
      "support": {
        "java": true,
        "dotnet": true
      },
      "sample": {
        "title": "QUALIFY query",
        "language": "sql",
        "text": "SELECT store_id, sales_amt,\n  RANK() OVER (PARTITION BY store_id ORDER BY sales_amt DESC) AS rnk\nFROM daily_sales\nQUALIFY rnk <= 3;",
        "parameters": {},
        "expect": {
          "statementTypes": [
            "sstselect"
          ],
          "requiredTables": [
            "daily_sales"
          ],
          "requiredColumns": [
            "store_id",
            "sales_amt",
            "rnk"
          ]
        }
      },
      "docs": {
        "slug": "teradata",
        "url": "https://docs.sqlparser.com/reference/sql-syntax/teradata/"
      },
      "pricingSlug": "teradata",
      "supportedOutputs": [
        "syntax",
        "statements",
        "objects",
        "ast",
        "lineage"
      ],
      "specialParameters": [],
      "surfaces": {
        "playground": {
          "enabled": true,
          "order": 8
        },
        "pricing": {
          "enabled": true,
          "order": 6
        },
        "dialectPage": {
          "enabled": true
        }
      }
    },
    {
      "id": "greenplum",
      "aliases": [],
      "name": "Greenplum",
      "group": "cloud-analytics",
      "edbVendor": "dbvgreenplum",
      "support": {
        "java": true,
        "dotnet": true
      },
      "sample": {
        "title": "Distributed table",
        "language": "sql",
        "text": "CREATE TABLE sales (id INT, region TEXT, amt NUMERIC)\nDISTRIBUTED BY (id);",
        "parameters": {},
        "expect": {
          "statementTypes": [
            "sstcreatetable"
          ],
          "requiredTables": [
            "sales"
          ],
          "requiredColumns": [
            "id",
            "region",
            "amt"
          ]
        }
      },
      "docs": {
        "slug": "greenplum",
        "url": "https://docs.sqlparser.com/reference/sql-syntax/greenplum/"
      },
      "pricingSlug": "greenplum",
      "supportedOutputs": [
        "syntax",
        "statements",
        "objects",
        "ast",
        "lineage"
      ],
      "specialParameters": [],
      "surfaces": {
        "playground": {
          "enabled": true,
          "order": 22
        },
        "pricing": {
          "enabled": true,
          "order": 17
        },
        "dialectPage": {
          "enabled": true
        }
      }
    },
    {
      "id": "netezza",
      "aliases": [],
      "name": "IBM Netezza",
      "group": "cloud-analytics",
      "edbVendor": "dbvnetezza",
      "support": {
        "java": true,
        "dotnet": true
      },
      "sample": {
        "title": "GROOM and statistics",
        "language": "sql",
        "text": "GROOM TABLE sales RECORDS ALL;\nGENERATE STATISTICS ON sales;",
        "parameters": {},
        "expect": {
          "statementTypes": [
            "sstnetezzaGroomTable",
            "sstnetezzaGenerateStatistics"
          ],
          "requiredTables": [],
          "requiredColumns": []
        }
      },
      "docs": {
        "slug": "netezza",
        "url": "https://docs.sqlparser.com/reference/sql-syntax/netezza/"
      },
      "pricingSlug": "netezza",
      "supportedOutputs": [
        "syntax",
        "statements",
        "objects",
        "ast",
        "lineage"
      ],
      "specialParameters": [],
      "surfaces": {
        "playground": {
          "enabled": true,
          "order": 23
        },
        "pricing": {
          "enabled": true,
          "order": 16
        },
        "dialectPage": {
          "enabled": true
        }
      }
    },
    {
      "id": "vertica",
      "aliases": [],
      "name": "Vertica",
      "group": "cloud-analytics",
      "edbVendor": "dbvvertica",
      "support": {
        "java": true,
        "dotnet": false
      },
      "sample": {
        "title": "Projection definition",
        "language": "sql",
        "text": "CREATE PROJECTION sales_proj AS\nSELECT id, region, amt FROM sales\nORDER BY region\nSEGMENTED BY HASH(id) ALL NODES;",
        "parameters": {},
        "expect": {
          "statementTypes": [
            "sstCreateProjection"
          ],
          "requiredTables": [
            "sales"
          ],
          "requiredColumns": []
        }
      },
      "docs": {
        "slug": "vertica",
        "url": "https://docs.sqlparser.com/reference/sql-syntax/vertica/"
      },
      "pricingSlug": "vertica",
      "supportedOutputs": [
        "syntax",
        "statements",
        "objects",
        "ast",
        "lineage"
      ],
      "specialParameters": [],
      "surfaces": {
        "playground": {
          "enabled": true,
          "order": 24
        },
        "pricing": {
          "enabled": true,
          "order": 18
        },
        "dialectPage": {
          "enabled": true
        }
      }
    },
    {
      "id": "clickhouse",
      "aliases": [],
      "name": "ClickHouse",
      "group": "cloud-analytics",
      "edbVendor": "dbvclickhouse",
      "support": {
        "java": true,
        "dotnet": false
      },
      "sample": {
        "title": "MergeTree table",
        "language": "sql",
        "text": "CREATE TABLE hits (dt DateTime, uid UInt64)\nENGINE = MergeTree()\nPARTITION BY toYYYYMM(dt)\nORDER BY (dt, uid);",
        "parameters": {},
        "expect": {
          "statementTypes": [
            "sstcreatetable"
          ],
          "requiredTables": [
            "hits"
          ],
          "requiredColumns": [
            "dt",
            "uid"
          ]
        }
      },
      "docs": {
        "slug": "clickhouse",
        "url": "https://docs.sqlparser.com/reference/sql-syntax/clickhouse/"
      },
      "pricingSlug": "clickhouse",
      "supportedOutputs": [
        "syntax",
        "statements",
        "objects",
        "ast",
        "lineage"
      ],
      "specialParameters": [],
      "surfaces": {
        "playground": {
          "enabled": true,
          "order": 25
        },
        "pricing": {
          "enabled": true,
          "order": 24
        },
        "dialectPage": {
          "enabled": true
        }
      }
    },
    {
      "id": "doris",
      "aliases": [],
      "name": "Apache Doris",
      "group": "cloud-analytics",
      "edbVendor": "dbvdoris",
      "support": {
        "java": true,
        "dotnet": false
      },
      "sample": {
        "title": "OLAP duplicate-key table",
        "language": "sql",
        "text": "CREATE TABLE events (\n  event_time DATETIME,\n  event_type INT,\n  user_id BIGINT,\n  event_data VARCHAR(1024)\n) DUPLICATE KEY(event_time, event_type)\nENGINE=OLAP\nDISTRIBUTED BY HASH(user_id) BUCKETS 10;",
        "parameters": {},
        "expect": {
          "statementTypes": [
            "sstcreatetable"
          ],
          "requiredTables": [],
          "requiredColumns": []
        }
      },
      "docs": {
        "slug": "doris",
        "url": "https://docs.sqlparser.com/reference/sql-syntax/doris/"
      },
      "pricingSlug": "doris",
      "supportedOutputs": [
        "syntax",
        "statements",
        "objects",
        "ast",
        "lineage"
      ],
      "specialParameters": [],
      "surfaces": {
        "playground": {
          "enabled": true,
          "order": 26
        },
        "pricing": {
          "enabled": true,
          "order": 32
        },
        "dialectPage": {
          "enabled": true
        }
      }
    },
    {
      "id": "starrocks",
      "aliases": [],
      "name": "StarRocks",
      "group": "cloud-analytics",
      "edbVendor": "dbvstarrocks",
      "support": {
        "java": true,
        "dotnet": false
      },
      "sample": {
        "title": "Dictionary definition",
        "language": "sql",
        "text": "CREATE DICTIONARY order_dict USING catalog1.sales.orders (\n  order_uuid KEY,\n  order_id VALUE,\n  order_name VALUE\n) PROPERTIES(\n  'dictionary_warm_up'='TRUE',\n  'dictionary_memory_limit'='2000000000'\n);",
        "parameters": {},
        "expect": {
          "statementTypes": [
            "sststarrocksCreateDictionary"
          ],
          "requiredTables": [],
          "requiredColumns": []
        }
      },
      "docs": {
        "slug": "starrocks",
        "url": "https://docs.sqlparser.com/reference/sql-syntax/starrocks/"
      },
      "pricingSlug": "starrocks",
      "supportedOutputs": [
        "syntax",
        "statements",
        "objects",
        "ast",
        "lineage"
      ],
      "specialParameters": [],
      "surfaces": {
        "playground": {
          "enabled": true,
          "order": 27
        },
        "pricing": {
          "enabled": true,
          "order": 33
        },
        "dialectPage": {
          "enabled": true
        }
      }
    },
    {
      "id": "athena",
      "aliases": [],
      "name": "AWS Athena",
      "group": "big-data-query-engines",
      "edbVendor": "dbvathena",
      "support": {
        "java": true,
        "dotnet": false
      },
      "sample": {
        "title": "External table",
        "language": "sql",
        "text": "CREATE EXTERNAL TABLE logs (id STRING, ts TIMESTAMP)\nROW FORMAT SERDE 'org.openx.data.jsonserde.JsonSerDe'\nLOCATION 's3://my-bucket/logs/';",
        "parameters": {},
        "expect": {
          "statementTypes": [
            "sstcreatetable"
          ],
          "requiredTables": [
            "logs"
          ],
          "requiredColumns": [
            "id",
            "ts"
          ]
        }
      },
      "docs": {
        "slug": "athena",
        "url": "https://docs.sqlparser.com/reference/sql-syntax/athena/"
      },
      "pricingSlug": "athena",
      "supportedOutputs": [
        "syntax",
        "statements",
        "objects",
        "ast",
        "lineage"
      ],
      "specialParameters": [],
      "surfaces": {
        "playground": {
          "enabled": true,
          "order": 28
        },
        "pricing": {
          "enabled": true,
          "order": 21
        },
        "dialectPage": {
          "enabled": true
        }
      }
    },
    {
      "id": "hive",
      "aliases": [],
      "name": "Apache Hive",
      "group": "big-data-query-engines",
      "edbVendor": "dbvhive",
      "support": {
        "java": true,
        "dotnet": true
      },
      "sample": {
        "title": "LATERAL VIEW",
        "language": "sql",
        "text": "SELECT myCol1, col2 FROM baseTable\nLATERAL VIEW explode(col1) myTable1 AS myCol1;",
        "parameters": {},
        "expect": {
          "statementTypes": [
            "sstselect"
          ],
          "requiredTables": [
            "baseTable"
          ],
          "requiredColumns": [
            "myCol1",
            "col2"
          ]
        }
      },
      "docs": {
        "slug": "hive",
        "url": "https://docs.sqlparser.com/reference/sql-syntax/hive/"
      },
      "pricingSlug": "hive",
      "supportedOutputs": [
        "syntax",
        "statements",
        "objects",
        "ast",
        "lineage"
      ],
      "specialParameters": [],
      "surfaces": {
        "playground": {
          "enabled": true,
          "order": 29
        },
        "pricing": {
          "enabled": true,
          "order": 10
        },
        "dialectPage": {
          "enabled": true
        }
      }
    },
    {
      "id": "impala",
      "aliases": [],
      "name": "Apache Impala",
      "group": "big-data-query-engines",
      "edbVendor": "dbvimpala",
      "support": {
        "java": true,
        "dotnet": true
      },
      "sample": {
        "title": "Partition maintenance",
        "language": "sql",
        "text": "ALTER TABLE sales_data ADD PARTITION (year=2026, month=7);",
        "parameters": {},
        "expect": {
          "statementTypes": [
            "sstaltertable"
          ],
          "requiredTables": [
            "sales_data"
          ],
          "requiredColumns": []
        }
      },
      "docs": {
        "slug": "impala",
        "url": "https://docs.sqlparser.com/reference/sql-syntax/impala/"
      },
      "pricingSlug": "impala",
      "supportedOutputs": [
        "syntax",
        "statements",
        "objects",
        "ast",
        "lineage"
      ],
      "specialParameters": [],
      "surfaces": {
        "playground": {
          "enabled": true,
          "order": 30
        },
        "pricing": {
          "enabled": true,
          "order": 11
        },
        "dialectPage": {
          "enabled": true
        }
      }
    },
    {
      "id": "sparksql",
      "aliases": [
        "spark"
      ],
      "name": "Apache Spark SQL",
      "group": "big-data-query-engines",
      "edbVendor": "dbvsparksql",
      "support": {
        "java": true,
        "dotnet": false
      },
      "sample": {
        "title": "Cached aggregate table",
        "language": "sql",
        "text": "CACHE TABLE sales_cache AS\nSELECT region, SUM(amt) AS total\nFROM sales WHERE year = 2026\nGROUP BY region;",
        "parameters": {},
        "expect": {
          "statementTypes": [
            "sstCache"
          ],
          "requiredTables": [],
          "requiredColumns": []
        }
      },
      "docs": {
        "slug": "spark",
        "url": "https://docs.sqlparser.com/reference/sql-syntax/spark/"
      },
      "pricingSlug": "sparksql",
      "supportedOutputs": [
        "syntax",
        "statements",
        "objects",
        "ast",
        "lineage"
      ],
      "specialParameters": [],
      "surfaces": {
        "playground": {
          "enabled": true,
          "order": 31
        },
        "pricing": {
          "enabled": true,
          "order": 12
        },
        "dialectPage": {
          "enabled": true
        }
      }
    },
    {
      "id": "flink",
      "aliases": [],
      "name": "Apache Flink SQL",
      "group": "big-data-query-engines",
      "edbVendor": "dbvflink",
      "support": {
        "java": true,
        "dotnet": false
      },
      "sample": {
        "title": "Kafka table with watermark",
        "language": "sql",
        "text": "CREATE TABLE orders (\n  order_id BIGINT,\n  amount DECIMAL(10, 2),\n  event_time TIMESTAMP(3),\n  WATERMARK FOR event_time AS event_time - INTERVAL '5' SECOND\n) WITH (\n  'connector' = 'kafka',\n  'topic' = 'orders'\n);",
        "parameters": {},
        "expect": {
          "statementTypes": [
            "sstcreatetable"
          ],
          "requiredTables": [
            "orders"
          ],
          "requiredColumns": [
            "order_id",
            "amount",
            "event_time"
          ]
        }
      },
      "docs": {
        "slug": "flink",
        "url": "https://docs.sqlparser.com/reference/sql-syntax/flink/"
      },
      "pricingSlug": "flink",
      "supportedOutputs": [
        "syntax",
        "statements",
        "objects",
        "ast",
        "lineage"
      ],
      "specialParameters": [],
      "surfaces": {
        "playground": {
          "enabled": true,
          "order": 32
        },
        "pricing": {
          "enabled": true,
          "order": 34
        },
        "dialectPage": {
          "enabled": true
        }
      }
    },
    {
      "id": "presto",
      "aliases": [
        "prestodb"
      ],
      "name": "Presto",
      "group": "big-data-query-engines",
      "edbVendor": "dbvpresto",
      "support": {
        "java": true,
        "dotnet": false
      },
      "sample": {
        "title": "Array UNNEST",
        "language": "sql",
        "text": "SELECT numbers, animals, n, a\nFROM (\n  VALUES (ARRAY[2, 5], ARRAY['dog', 'cat']),\n         (ARRAY[7, 8], ARRAY['cow', 'pig'])\n) AS x (numbers, animals)\nCROSS JOIN UNNEST(numbers, animals) AS t (n, a);",
        "parameters": {},
        "expect": {
          "statementTypes": [
            "sstselect"
          ],
          "requiredTables": [],
          "requiredColumns": [
            "numbers",
            "animals",
            "n",
            "a"
          ]
        }
      },
      "docs": {
        "slug": "presto",
        "url": "https://docs.sqlparser.com/reference/sql-syntax/presto/"
      },
      "pricingSlug": "presto",
      "supportedOutputs": [
        "syntax",
        "statements",
        "objects",
        "ast",
        "lineage"
      ],
      "specialParameters": [],
      "surfaces": {
        "playground": {
          "enabled": true,
          "order": 33
        },
        "pricing": {
          "enabled": true,
          "order": 35
        },
        "dialectPage": {
          "enabled": true
        }
      }
    },
    {
      "id": "trino",
      "aliases": [],
      "name": "Trino",
      "group": "big-data-query-engines",
      "edbVendor": "dbvtrino",
      "support": {
        "java": true,
        "dotnet": false
      },
      "sample": {
        "title": "UNNEST query",
        "language": "sql",
        "text": "SELECT student, score\nFROM tests\nCROSS JOIN UNNEST(scores) AS t(score);",
        "parameters": {},
        "expect": {
          "statementTypes": [
            "sstselect"
          ],
          "requiredTables": [
            "tests"
          ],
          "requiredColumns": [
            "student",
            "score",
            "scores"
          ]
        }
      },
      "docs": {
        "slug": "trino",
        "url": "https://docs.sqlparser.com/reference/sql-syntax/trino/"
      },
      "pricingSlug": "trino",
      "supportedOutputs": [
        "syntax",
        "statements",
        "objects",
        "ast",
        "lineage"
      ],
      "specialParameters": [],
      "surfaces": {
        "playground": {
          "enabled": true,
          "order": 34
        },
        "pricing": {
          "enabled": true,
          "order": 23
        },
        "dialectPage": {
          "enabled": true
        }
      }
    },
    {
      "id": "couchbase",
      "aliases": [],
      "name": "Couchbase N1QL",
      "group": "specialized-languages-interfaces",
      "edbVendor": "dbvcouchbase",
      "support": {
        "java": true,
        "dotnet": false
      },
      "sample": {
        "title": "N1QL UPSERT",
        "language": "sql",
        "text": "UPSERT INTO product (KEY, VALUE)\nVALUES (\"odwalla-juice1\",\n  {\"productId\": \"odwalla-juice1\", \"unitPrice\": 5.40})\nRETURNING *;",
        "parameters": {},
        "expect": {
          "statementTypes": [
            "sstupsert"
          ],
          "requiredTables": [
            "product"
          ],
          "requiredColumns": []
        }
      },
      "docs": {
        "slug": "couchbase",
        "url": "https://docs.sqlparser.com/reference/sql-syntax/couchbase/"
      },
      "pricingSlug": "couchbase",
      "supportedOutputs": [
        "syntax",
        "statements",
        "objects",
        "ast",
        "lineage"
      ],
      "specialParameters": [],
      "surfaces": {
        "playground": {
          "enabled": true,
          "order": 35
        },
        "pricing": {
          "enabled": true,
          "order": 19
        },
        "dialectPage": {
          "enabled": true
        }
      }
    },
    {
      "id": "soql",
      "aliases": [],
      "name": "Salesforce SOQL",
      "group": "specialized-languages-interfaces",
      "edbVendor": "dbvsoql",
      "support": {
        "java": true,
        "dotnet": false
      },
      "sample": {
        "title": "Relationship aggregate",
        "language": "soql",
        "text": "SELECT Account.Name, COUNT(Id)\nFROM Contact\nWHERE CreatedDate = THIS_YEAR\nGROUP BY Account.Name\nHAVING COUNT(Id) > 5;",
        "parameters": {},
        "expect": {
          "statementTypes": [
            "sstselect"
          ],
          "requiredTables": [
            "Contact"
          ],
          "requiredColumns": [
            "Account.Name",
            "Id",
            "CreatedDate"
          ]
        }
      },
      "docs": {
        "slug": "soql",
        "url": "https://docs.sqlparser.com/reference/sql-syntax/soql/"
      },
      "pricingSlug": "soql",
      "supportedOutputs": [
        "syntax",
        "statements",
        "objects",
        "ast",
        "lineage"
      ],
      "specialParameters": [],
      "surfaces": {
        "playground": {
          "enabled": true,
          "order": 36
        },
        "pricing": {
          "enabled": true,
          "order": 36
        },
        "dialectPage": {
          "enabled": true
        }
      }
    },
    {
      "id": "mdx",
      "aliases": [],
      "name": "MDX",
      "group": "specialized-languages-interfaces",
      "edbVendor": "dbvmdx",
      "support": {
        "java": true,
        "dotnet": true
      },
      "sample": {
        "title": "Cube query",
        "language": "mdx",
        "text": "SELECT [Measures].[Sales Amount] ON COLUMNS,\n  [Product].[Category].Members ON ROWS\nFROM [Adventure Works];",
        "parameters": {},
        "expect": {
          "statementTypes": [
            "sstmdxselect"
          ],
          "requiredTables": [],
          "requiredColumns": []
        }
      },
      "docs": {
        "slug": null,
        "url": null
      },
      "pricingSlug": "mdx",
      "supportedOutputs": [
        "syntax",
        "statements",
        "ast",
        "lineage"
      ],
      "specialParameters": [],
      "surfaces": {
        "playground": {
          "enabled": true,
          "order": 37
        },
        "pricing": {
          "enabled": true,
          "order": 37
        },
        "dialectPage": {
          "enabled": true
        }
      }
    },
    {
      "id": "powerquery",
      "aliases": [
        "m",
        "powerbi"
      ],
      "name": "Power Query M",
      "group": "specialized-languages-interfaces",
      "edbVendor": "dbvpowerquery",
      "support": {
        "java": true,
        "dotnet": false
      },
      "sample": {
        "title": "M native query",
        "language": "powerquery-m",
        "text": "let\n  Source = Snowflake.Databases(\"acct\", \"WH\"),\n  DB = Source{[Name=\"PROD\", Kind=\"Database\"]}[Data],\n  Result = Value.NativeQuery(DB, \"SELECT id, amount FROM PROD.SALES.orders\")\nin Result",
        "parameters": {},
        "expect": {
          "statementTypes": [
            "sstpowerquerydocument"
          ],
          "requiredTables": [],
          "requiredColumns": []
        }
      },
      "docs": {
        "slug": null,
        "url": null
      },
      "pricingSlug": "powerquery",
      "supportedOutputs": [
        "syntax",
        "statements",
        "ast",
        "lineage"
      ],
      "specialParameters": [],
      "surfaces": {
        "playground": {
          "enabled": true,
          "order": 38
        },
        "pricing": {
          "enabled": true,
          "order": 38
        },
        "dialectPage": {
          "enabled": true
        }
      }
    },
    {
      "id": "odbc",
      "aliases": [],
      "name": "ODBC",
      "group": "specialized-languages-interfaces",
      "edbVendor": "dbvodbc",
      "support": {
        "java": true,
        "dotnet": false
      },
      "sample": {
        "title": "ODBC escape functions",
        "language": "sql",
        "text": "SELECT {fn UCASE(customer_name)} AS customer_name\nFROM customers\nWHERE created_at >= {d '2026-01-01'};",
        "parameters": {},
        "expect": {
          "statementTypes": [
            "sstselect"
          ],
          "requiredTables": [
            "customers"
          ],
          "requiredColumns": [
            "customer_name",
            "created_at"
          ]
        }
      },
      "docs": {
        "slug": "odbc",
        "url": "https://docs.sqlparser.com/reference/sql-syntax/odbc/"
      },
      "pricingSlug": "odbc",
      "supportedOutputs": [
        "syntax",
        "statements",
        "objects",
        "ast",
        "lineage"
      ],
      "specialParameters": [],
      "surfaces": {
        "playground": {
          "enabled": true,
          "order": 39
        },
        "pricing": {
          "enabled": true,
          "order": 39
        },
        "dialectPage": {
          "enabled": true
        }
      }
    }
  ]
}
