[
{
"input": "SELECT 1",
"expectedParts": ["RawStmt", "stmt", "SelectStmt", "limitOption", "LIMIT_OPTION_DEFAULT", "op", "SETOP_NONE", "targetList", "ResTarget"],
"expectedHash": "50fde20626009aba"
},
{
"input": "SELECT 2",
"expectedParts": ["RawStmt", "stmt", "SelectStmt", "limitOption", "LIMIT_OPTION_DEFAULT", "op", "SETOP_NONE", "targetList", "ResTarget"],
"expectedHash": "50fde20626009aba"
},
{
"input": "SELECT ?",
"expectedParts": ["RawStmt", "stmt", "SelectStmt", "limitOption", "LIMIT_OPTION_DEFAULT", "op", "SETOP_NONE", "targetList", "ResTarget"],
"expectedHash": "50fde20626009aba"
},
{
"input": "SELECT $1",
"expectedParts": ["RawStmt", "stmt", "SelectStmt", "limitOption", "LIMIT_OPTION_DEFAULT", "op", "SETOP_NONE", "targetList", "ResTarget"],
"expectedHash": "50fde20626009aba"
},
{
"input": "SELECT 1; SELECT a FROM b",
"expectedParts": ["RawStmt", "stmt", "SelectStmt", "limitOption", "LIMIT_OPTION_DEFAULT", "op", "SETOP_NONE", "targetList", "ResTarget",
"RawStmt", "stmt", "SelectStmt",
"fromClause", "RangeVar", "inh", "true", "relname", "b", "relpersistence",
"p", "limitOption", "LIMIT_OPTION_DEFAULT", "op", "SETOP_NONE", "targetList",
"ResTarget", "val", "ColumnRef", "fields", "String", "str", "a"],
"expectedHash": "3efa3b10d558d06d"
},
{
"input": "SELECT COUNT(DISTINCT id), * FROM targets WHERE something IS NOT NULL AND elsewhere::interval < now()",
"expectedParts": ["RawStmt", "stmt", "SelectStmt", "fromClause", "RangeVar", "inh", "true", "relname",
"targets", "relpersistence", "p", "limitOption", "LIMIT_OPTION_DEFAULT", "op", "SETOP_NONE", "targetList", "ResTarget", "val",
"FuncCall", "agg_distinct", "true", "args", "ColumnRef", "fields", "String", "str", "id", "funcname", "String", "str", "count",
"ResTarget", "val", "ColumnRef", "fields", "A_Star",
"whereClause", "BoolExpr", "args", "A_Expr", "kind", "AEXPR_OP", "lexpr", "TypeCast", "arg",
"ColumnRef", "fields", "String", "str", "elsewhere", "typeName",
"names", "String", "str", "pg_catalog", "String", "str", "interval", "typemod",
"-1", "name", "String", "str", "<", "rexpr", "FuncCall", "funcname", "String",
"str", "now", "NullTest", "arg", "ColumnRef", "fields", "String",
"str", "something", "nulltesttype", "IS_NOT_NULL", "boolop", "AND_EXPR"],
"expectedHash": "4380dd02d56bbe1a"
},
{
"input": "INSERT INTO test (a, b) VALUES (?, ?)",
"expectedParts": ["RawStmt", "stmt", "InsertStmt", "cols", "ResTarget",
"name", "b", "ResTarget", "name", "a", "override", "OVERRIDING_NOT_SET", "relation",
"inh", "true", "relname", "test", "relpersistence", "p", "selectStmt", "SelectStmt", "limitOption", "LIMIT_OPTION_DEFAULT", "op", "SETOP_NONE"],
"expectedHash": "51e63b8083b48bdd"
},
{
"input": "INSERT INTO test (b, a) VALUES (?, ?)",
"expectedParts": ["RawStmt", "stmt", "InsertStmt", "cols", "ResTarget",
"name", "b", "ResTarget", "name", "a", "override", "OVERRIDING_NOT_SET", "relation",
"inh", "true", "relname", "test", "relpersistence", "p", "selectStmt", "SelectStmt", "limitOption", "LIMIT_OPTION_DEFAULT", "op", "SETOP_NONE"],
"expectedHash": "51e63b8083b48bdd"
},
{
"input": "INSERT INTO test (a, b) VALUES (ARRAY[?, ?, ?, ?], ?::timestamptz), (ARRAY[?, ?, ?, ?], ?::timestamptz), (?, ?::timestamptz)",
"expectedParts": ["RawStmt", "stmt", "InsertStmt", "cols", "ResTarget", "name",
"b", "ResTarget", "name", "a", "override", "OVERRIDING_NOT_SET", "relation", "inh", "true",
"relname", "test", "relpersistence", "p", "selectStmt", "SelectStmt", "limitOption", "LIMIT_OPTION_DEFAULT", "op", "SETOP_NONE",
"valuesLists", "A_ArrayExpr"],
"expectedHash": "4dfdd5260cac5acf"
},
{
"input": "SELECT b AS x, a AS y FROM z",
"expectedParts": ["RawStmt", "stmt", "SelectStmt", "fromClause", "RangeVar", "inh", "true", "relname", "z",
"relpersistence", "p", "limitOption", "LIMIT_OPTION_DEFAULT", "op", "SETOP_NONE", "targetList", "ResTarget", "val", "ColumnRef", "fields",
"String", "str", "b", "ResTarget", "val", "ColumnRef", "fields", "String", "str", "a"],
"expectedHash": "1a8bf5d7614de3a5"
},
{
"input": "SELECT * FROM x WHERE y = ?",
"expectedParts": ["RawStmt", "stmt", "SelectStmt", "fromClause", "RangeVar", "inh", "true", "relname", "x",
"relpersistence", "p", "limitOption", "LIMIT_OPTION_DEFAULT", "op", "SETOP_NONE", "targetList", "ResTarget", "val", "ColumnRef", "fields", "A_Star",
"whereClause", "A_Expr", "kind", "AEXPR_OP", "lexpr", "ColumnRef", "fields", "String", "str", "y",
"name", "String", "str", "="],
"expectedHash": "4ff39426bd074231"
},
{
"input": "SELECT * FROM x WHERE y = ANY ($1)",
"expectedParts": ["RawStmt", "stmt", "SelectStmt", "fromClause", "RangeVar", "inh", "true", "relname", "x",
"relpersistence", "p", "limitOption", "LIMIT_OPTION_DEFAULT", "op", "SETOP_NONE", "targetList", "ResTarget", "val", "ColumnRef", "fields", "A_Star",
"whereClause", "A_Expr", "kind", "AEXPR_OP", "lexpr", "ColumnRef", "fields", "String", "str", "y",
"name", "String", "str", "="],
"expectedHash": "4ff39426bd074231"
},
{
"input": "SELECT * FROM x WHERE y IN (?)",
"expectedParts": ["RawStmt", "stmt", "SelectStmt", "fromClause", "RangeVar", "inh", "true", "relname", "x",
"relpersistence", "p", "limitOption", "LIMIT_OPTION_DEFAULT", "op", "SETOP_NONE", "targetList", "ResTarget", "val", "ColumnRef", "fields", "A_Star",
"whereClause", "A_Expr", "kind", "AEXPR_OP", "lexpr", "ColumnRef", "fields", "String", "str", "y",
"name", "String", "str", "="],
"expectedHash": "4ff39426bd074231"
},
{
"input": "SELECT * FROM x WHERE y IN (?, ?, ?)",
"expectedParts": ["RawStmt", "stmt", "SelectStmt", "fromClause", "RangeVar", "inh", "true", "relname", "x",
"relpersistence", "p", "limitOption", "LIMIT_OPTION_DEFAULT", "op", "SETOP_NONE", "targetList", "ResTarget", "val", "ColumnRef", "fields", "A_Star",
"whereClause", "A_Expr", "kind", "AEXPR_OP", "lexpr", "ColumnRef", "fields", "String", "str", "y",
"name", "String", "str", "="],
"expectedHash": "4ff39426bd074231"
},
{
"input": "SELECT * FROM x WHERE y IN ( ?::uuid )",
"expectedParts": ["RawStmt", "stmt", "SelectStmt", "fromClause", "RangeVar", "inh", "true", "relname", "x",
"relpersistence", "p", "limitOption", "LIMIT_OPTION_DEFAULT", "op", "SETOP_NONE", "targetList", "ResTarget", "val", "ColumnRef", "fields", "A_Star",
"whereClause", "A_Expr", "kind", "AEXPR_OP", "lexpr", "ColumnRef", "fields", "String", "str", "y",
"name", "String", "str", "="],
"expectedHash": "4ff39426bd074231"
},
{
"input": "SELECT * FROM x WHERE y IN ( ?::uuid, ?::uuid, ?::uuid )",
"expectedParts": ["RawStmt", "stmt", "SelectStmt", "fromClause", "RangeVar", "inh", "true", "relname", "x",
"relpersistence", "p", "limitOption", "LIMIT_OPTION_DEFAULT", "op", "SETOP_NONE", "targetList", "ResTarget", "val", "ColumnRef", "fields", "A_Star",
"whereClause", "A_Expr", "kind", "AEXPR_OP", "lexpr", "ColumnRef", "fields", "String", "str", "y",
"name", "String", "str", "="],
"expectedHash": "4ff39426bd074231"
},
{
"input": "PREPARE a123 AS SELECT a",
"expectedParts": ["RawStmt", "stmt", "PrepareStmt", "query", "SelectStmt",
"limitOption", "LIMIT_OPTION_DEFAULT", "op", "SETOP_NONE",
"targetList", "ResTarget", "val", "ColumnRef", "fields", "String", "str", "a"],
"expectedHash": "9b5e6ead8be993e8"
},
{
"input": "EXECUTE a123",
"expectedParts": ["RawStmt", "stmt", "ExecuteStmt"],
"expectedHash": "44ef1d2beabd53e8"
},
{
"input": "DEALLOCATE a123",
"expectedParts": ["RawStmt", "stmt", "DeallocateStmt"],
"expectedHash": "d8a65a814fbc5f95"
},
{
"input": "DEALLOCATE ALL",
"expectedParts": ["RawStmt", "stmt", "DeallocateStmt"],
"expectedHash": "d8a65a814fbc5f95"
},
{
"input": "EXPLAIN ANALYZE SELECT a",
"expectedParts": ["RawStmt", "stmt", "ExplainStmt", "options", "DefElem",
"defaction", "DEFELEM_UNSPEC", "defname", "analyze", "query", "SelectStmt", "limitOption", "LIMIT_OPTION_DEFAULT", "op", "SETOP_NONE",
"targetList", "ResTarget", "val", "ColumnRef", "fields", "String", "str", "a"],
"expectedHash": "82845c1b5c6102e5"
},
{
"input": "WITH a AS (SELECT * FROM x WHERE x.y = ? AND x.z = 1) SELECT * FROM a",
"expectedParts": ["RawStmt", "stmt", "SelectStmt", "fromClause", "RangeVar",
"inh", "true", "relname", "a", "relpersistence", "p", "limitOption",
"LIMIT_OPTION_DEFAULT", "op", "SETOP_NONE", "targetList", "ResTarget",
"val", "ColumnRef", "fields", "A_Star", "withClause",
"ctes", "CommonTableExpr", "ctematerialized", "CTEMaterializeDefault",
"ctename", "a", "ctequery", "SelectStmt", "fromClause", "RangeVar",
"inh", "true", "relname", "x", "relpersistence", "p", "limitOption",
"LIMIT_OPTION_DEFAULT", "op", "SETOP_NONE", "targetList", "ResTarget",
"val", "ColumnRef", "fields", "A_Star", "whereClause", "BoolExpr",
"args", "A_Expr", "kind", "AEXPR_OP", "lexpr", "ColumnRef", "fields",
"String", "str", "x", "String", "str", "y", "name", "String", "str",
"=", "A_Expr", "kind", "AEXPR_OP", "lexpr", "ColumnRef", "fields",
"String", "str", "x", "String", "str", "z", "name", "String", "str",
"=", "boolop", "AND_EXPR"],
"expectedHash": "6831e38bbb3dd18c"
},
{
"input": "CREATE TABLE types (a float(2), b float(49), c NUMERIC(2, 3), d character(4), e char(5), f varchar(6), g character varying(7))",
"expectedParts": ["RawStmt", "stmt", "CreateStmt", "oncommit", "ONCOMMIT_NOOP", "relation", "inh", "true", "relname", "types",
"relpersistence", "p", "tableElts", "ColumnDef", "colname", "a", "is_local", "true",
"typeName", "names", "String", "str", "pg_catalog", "String", "str", "float4",
"typemod", "-1", "ColumnDef", "colname", "b", "is_local", "true", "typeName",
"names", "String", "str", "pg_catalog", "String", "str", "float8", "typemod", "-1",
"ColumnDef", "colname", "c", "is_local", "true", "typeName", "names",
"String", "str", "pg_catalog", "String", "str", "numeric", "typemod", "-1",
"ColumnDef", "colname", "d", "is_local", "true", "typeName", "names", "String",
"str", "pg_catalog", "String", "str", "bpchar", "typemod", "-1", "ColumnDef",
"colname", "e", "is_local", "true", "typeName", "names", "String", "str",
"pg_catalog", "String", "str", "bpchar", "typemod", "-1", "ColumnDef", "colname",
"f", "is_local", "true", "typeName", "names", "String", "str", "pg_catalog",
"String", "str", "varchar", "typemod", "-1", "ColumnDef", "colname", "g",
"is_local", "true", "typeName", "names", "String", "str", "pg_catalog",
"String", "str", "varchar", "typemod", "-1"],
"expectedHash": "008d6ba4aa0f4c6e"
},
{
"input": "CREATE VIEW view_a (a, b) AS WITH RECURSIVE view_a (a, b) AS (SELECT * FROM a(1)) SELECT \"a\", \"b\" FROM \"view_a\"",
"expectedParts": ["RawStmt", "stmt", "ViewStmt", "aliases", "String", "str", "a",
"String", "str", "b", "query", "SelectStmt", "fromClause", "RangeVar", "inh", "true",
"relname", "view_a", "relpersistence", "p", "limitOption", "LIMIT_OPTION_DEFAULT", "op",
"SETOP_NONE", "targetList", "ResTarget", "val", "ColumnRef", "fields", "String",
"str", "b", "ResTarget", "val", "ColumnRef", "fields", "String", "str", "a",
"withClause", "ctes", "CommonTableExpr", "aliascolnames",
"String", "str", "a", "String", "str", "b", "ctematerialized", "CTEMaterializeDefault",
"ctename", "view_a", "ctequery", "SelectStmt", "fromClause", "RangeFunction",
"functions", "FuncCall", "funcname", "String", "str", "a", "limitOption", "LIMIT_OPTION_DEFAULT",
"op", "SETOP_NONE", "targetList", "ResTarget", "val", "ColumnRef", "fields", "A_Star",
"recursive", "true", "view", "inh", "true", "relname", "view_a",
"relpersistence", "p", "withCheckOption", "NO_CHECK_OPTION"],
"expectedHash": "6236405577a6cea6"
},
{
"input": "VACUUM FULL my_table",
"expectedParts": ["RawStmt", "stmt", "VacuumStmt", "is_vacuumcmd", "true", "options",
"DefElem", "defaction", "DEFELEM_UNSPEC", "defname", "full", "rels", "VacuumRelation", "relation",
"inh", "true", "relname", "my_table", "relpersistence", "p"],
"expectedHash": "fdf2f4127644f4d8"
},
{
"input": "SELECT * FROM x AS a, y AS b",
"expectedParts": ["RawStmt", "stmt", "SelectStmt", "fromClause", "RangeVar", "inh", "true",
"relname", "x", "relpersistence", "p", "RangeVar", "inh", "true", "relname", "y",
"relpersistence", "p", "limitOption", "LIMIT_OPTION_DEFAULT", "op", "SETOP_NONE", "targetList", "ResTarget", "val", "ColumnRef", "fields", "A_Star"],
"expectedHash": "4e9acae841dae228"
},
{
"input": "SELECT * FROM y AS a, x AS b",
"expectedParts": ["RawStmt", "stmt", "SelectStmt", "fromClause", "RangeVar", "inh", "true",
"relname", "x", "relpersistence", "p", "RangeVar", "inh", "true", "relname", "y",
"relpersistence", "p", "limitOption", "LIMIT_OPTION_DEFAULT", "op", "SETOP_NONE", "targetList", "ResTarget", "val", "ColumnRef", "fields", "A_Star"],
"expectedHash": "4e9acae841dae228"
},
{
"input": "SELECT x AS a, y AS b FROM x",
"expectedParts": ["RawStmt", "stmt", "SelectStmt", "fromClause", "RangeVar", "inh", "true", "relname", "x",
"relpersistence", "p", "limitOption", "LIMIT_OPTION_DEFAULT", "op", "SETOP_NONE", "targetList", "ResTarget", "val", "ColumnRef", "fields", "String",
"str", "x", "ResTarget", "val", "ColumnRef", "fields", "String", "str", "y"],
"expectedHash": "65dff5f5e9a643ad"
},
{
"input": "SELECT y AS a, x AS b FROM x",
"expectedParts": ["RawStmt", "stmt", "SelectStmt", "fromClause", "RangeVar", "inh", "true", "relname", "x",
"relpersistence", "p", "limitOption", "LIMIT_OPTION_DEFAULT", "op", "SETOP_NONE", "targetList", "ResTarget", "val", "ColumnRef", "fields", "String",
"str", "x", "ResTarget", "val", "ColumnRef", "fields", "String", "str", "y"],
"expectedHash": "65dff5f5e9a643ad"
},
{
"input": "SELECT x, y FROM z",
"expectedParts": ["RawStmt", "stmt", "SelectStmt", "fromClause", "RangeVar", "inh", "true", "relname", "z",
"relpersistence", "p", "limitOption", "LIMIT_OPTION_DEFAULT", "op", "SETOP_NONE", "targetList", "ResTarget", "val", "ColumnRef", "fields",
"String", "str", "x", "ResTarget", "val", "ColumnRef", "fields", "String", "str", "y"],
"expectedHash": "330267237da5535f"
},
{
"input": "SELECT y, x FROM z",
"expectedParts": ["RawStmt", "stmt", "SelectStmt", "fromClause", "RangeVar", "inh", "true", "relname", "z",
"relpersistence", "p", "limitOption", "LIMIT_OPTION_DEFAULT", "op", "SETOP_NONE", "targetList", "ResTarget", "val", "ColumnRef", "fields",
"String", "str", "x", "ResTarget", "val", "ColumnRef", "fields", "String", "str", "y"],
"expectedHash": "330267237da5535f"
},
{
"input": "INSERT INTO films (code, title, did) VALUES ('UA502', 'Bananas', 105), ('T_601', 'Yojimbo', DEFAULT)",
"expectedParts": ["RawStmt", "stmt", "InsertStmt", "cols", "ResTarget", "name", "title", "ResTarget", "name", "did",
"ResTarget", "name", "code", "override", "OVERRIDING_NOT_SET", "relation", "inh", "true", "relname", "films",
"relpersistence", "p", "selectStmt", "SelectStmt", "limitOption", "LIMIT_OPTION_DEFAULT", "op", "SETOP_NONE"],
"expectedHash": "459fdc70778b841e"
},
{
"input": "INSERT INTO films (code, title, did) VALUES (?, ?, ?)",
"expectedParts": ["RawStmt", "stmt", "InsertStmt", "cols", "ResTarget", "name", "title", "ResTarget", "name", "did",
"ResTarget", "name", "code", "override", "OVERRIDING_NOT_SET", "relation", "inh", "true", "relname", "films",
"relpersistence", "p", "selectStmt", "SelectStmt", "limitOption", "LIMIT_OPTION_DEFAULT", "op", "SETOP_NONE"],
"expectedHash": "459fdc70778b841e"
},
{
"input": "SELECT * FROM a",
"expectedParts": ["RawStmt", "stmt", "SelectStmt", "fromClause", "RangeVar", "inh", "true", "relname", "a",
"relpersistence", "p", "limitOption", "LIMIT_OPTION_DEFAULT", "op", "SETOP_NONE", "targetList", "ResTarget", "val", "ColumnRef", "fields", "A_Star"],
"expectedHash": "fcf44da7b597ef43"
},
{
"input": "SELECT * FROM a AS b",
"expectedParts": ["RawStmt", "stmt", "SelectStmt", "fromClause", "RangeVar", "inh", "true", "relname", "a",
"relpersistence", "p", "limitOption", "LIMIT_OPTION_DEFAULT", "op", "SETOP_NONE", "targetList", "ResTarget", "val", "ColumnRef", "fields", "A_Star"],
"expectedHash": "fcf44da7b597ef43"
},
{
"input": "UPDATE users SET one_thing = $1, second_thing = $2 WHERE users.id = ?",
"expectedParts": ["RawStmt", "stmt", "UpdateStmt", "relation", "inh", "true", "relname", "users", "relpersistence", "p",
"targetList", "ResTarget", "name", "one_thing", "ResTarget", "name", "second_thing",
"whereClause", "A_Expr", "kind", "AEXPR_OP", "lexpr", "ColumnRef", "fields", "String",
"str", "users", "String", "str", "id", "name", "String", "str", "="],
"expectedHash": "a0ea386c1cfd1e69"
},
{
"input": "UPDATE users SET something_else = $1 WHERE users.id = ?",
"expectedParts": ["RawStmt", "stmt", "UpdateStmt", "relation", "inh", "true", "relname", "users", "relpersistence", "p",
"targetList", "ResTarget", "name", "something_else", "whereClause", "A_Expr", "kind", "AEXPR_OP", "lexpr", "ColumnRef", "fields", "String",
"str", "users", "String", "str", "id", "name", "String", "str", "="],
"expectedHash": "3172bc3e0d631d55"
},
{
"input": "UPDATE users SET something_else = (SELECT a FROM x WHERE uid = users.id LIMIT 1) WHERE users.id = ?",
"expectedParts": ["RawStmt", "stmt", "UpdateStmt", "relation", "inh", "true", "relname", "users", "relpersistence", "p",
"targetList", "ResTarget", "name", "something_else", "val", "SubLink", "subLinkType", "EXPR_SUBLINK", "subselect", "SelectStmt", "fromClause",
"RangeVar", "inh", "true", "relname", "x", "relpersistence", "p", "limitOption", "LIMIT_OPTION_COUNT", "op", "SETOP_NONE", "targetList", "ResTarget", "val", "ColumnRef",
"fields", "String", "str", "a", "whereClause", "A_Expr", "kind", "AEXPR_OP", "lexpr", "ColumnRef", "fields", "String", "str", "uid",
"name", "String", "str", "=", "rexpr", "ColumnRef", "fields", "String", "str", "users", "String", "str", "id",
"whereClause", "A_Expr", "kind", "AEXPR_OP", "lexpr", "ColumnRef", "fields", "String", "str", "users", "String", "str", "id", "name", "String", "str", "="],
"expectedHash": "f1127a8b91fbecbf"
},
{
"input": "SAVEPOINT some_id",
"expectedParts": ["RawStmt", "stmt", "TransactionStmt", "kind", "TRANS_STMT_SAVEPOINT"],
"expectedHash": "8ebd566ea1bf947b"
},
{
"input": "RELEASE some_id",
"expectedParts": ["RawStmt", "stmt", "TransactionStmt", "kind", "TRANS_STMT_RELEASE"],
"expectedHash": "60d618658252d2af"
},
{
"input": "PREPARE TRANSACTION 'some_id'",
"expectedParts": ["RawStmt", "stmt", "TransactionStmt", "kind", "TRANS_STMT_PREPARE"],
"expectedHash": "d993959a33d627d4"
},
{
"input": "START TRANSACTION READ WRITE",
"expectedParts": ["RawStmt", "stmt", "TransactionStmt", "kind", "TRANS_STMT_START"],
"expectedHash": "4ca25828c835d55a"
},
{
"input": "DECLARE cursor_123 CURSOR FOR SELECT * FROM test WHERE id = 123",
"expectedParts": ["RawStmt", "stmt", "DeclareCursorStmt", "options", "32", "query", "SelectStmt",
"fromClause", "RangeVar", "inh", "true", "relname", "test", "relpersistence",
"p", "limitOption", "LIMIT_OPTION_DEFAULT", "op", "SETOP_NONE",
"targetList", "ResTarget", "val", "ColumnRef", "fields", "A_Star",
"whereClause", "A_Expr", "kind", "AEXPR_OP", "lexpr", "ColumnRef", "fields", "String", "str",
"id", "name", "String", "str", "="],
"expectedHash": "0119adaeb91afad0"
},
{
"input": "FETCH 1000 FROM cursor_123",
"expectedParts": ["RawStmt", "stmt", "FetchStmt", "direction", "FETCH_FORWARD", "howMany", "1000"],
"expectedHash": "37f4d2f6a957ae48"
},
{
"input": "CLOSE cursor_123",
"expectedParts": ["RawStmt", "stmt", "ClosePortalStmt"],
"expectedHash": "2c7963684fc2bad9"
},
{
"input": "-- nothing",
"expectedParts": [],
"expectedHash": "d8d13f8b2da6c9ad"
},
{
"input": "CREATE FOREIGN TABLE ft1 () SERVER no_server",
"expectedParts": ["RawStmt", "stmt", "CreateForeignTableStmt", "base", "oncommit", "ONCOMMIT_NOOP", "relation", "inh", "true", "relname", "ft1", "relpersistence", "p", "servername", "no_server"],
"expectedHash": "74481c4af7c76be1"
},
{
"input": "UPDATE x SET a = 1, b = 2, c = 3",
"expectedParts": ["RawStmt", "stmt", "UpdateStmt", "relation", "inh", "true", "relname", "x", "relpersistence", "p", "targetList", "ResTarget", "name", "b", "ResTarget", "name", "c", "ResTarget", "name", "a"],
"expectedHash": "fd5c248c0e642ce4"
},
{
"input": "UPDATE x SET z = now()",
"expectedParts": ["RawStmt", "stmt", "UpdateStmt", "relation", "inh", "true", "relname", "x", "relpersistence", "p", "targetList", "ResTarget", "name", "z", "val", "FuncCall", "funcname", "String", "str", "now"],
"expectedHash": "78fe872f5ec28674"
},
{
"input": "CREATE TEMPORARY TABLE my_temp_table (test_id integer NOT NULL) ON COMMIT DROP",
"expectedParts": ["RawStmt", "stmt", "CreateStmt", "oncommit", "ONCOMMIT_DROP", "relation","inh", "true", "relpersistence", "t", "tableElts", "ColumnDef", "colname", "test_id", "constraints", "Constraint", "contype", "CONSTR_NOTNULL", "is_local", "true", "typeName", "names", "String", "str", "pg_catalog", "String", "str", "int4", "typemod", "-1"],
"expectedHash": "1407ed5c5bb00967"
},
{
"input": "CREATE TEMPORARY TABLE my_temp_table AS SELECT 1",
"expectedParts": ["RawStmt", "stmt", "CreateTableAsStmt", "into", "onCommit", "ONCOMMIT_NOOP", "rel", "inh", "true", "relpersistence", "t", "query", "SelectStmt", "limitOption", "LIMIT_OPTION_DEFAULT", "op", "SETOP_NONE", "targetList", "ResTarget", "relkind", "OBJECT_TABLE"],
"expectedHash": "dd5fac57c3c4524c"
},
{
"input": "SELECT INTERVAL (0) $2",
"expectedParts": ["RawStmt", "stmt", "SelectStmt", "limitOption", "LIMIT_OPTION_DEFAULT", "op", "SETOP_NONE", "targetList", "ResTarget"],
"expectedHash": "50fde20626009aba"
},
{
"input": "SELECT INTERVAL (2) $2",
"expectedParts": ["RawStmt", "stmt", "SelectStmt", "limitOption", "LIMIT_OPTION_DEFAULT", "op", "SETOP_NONE", "targetList", "ResTarget"],
"expectedHash": "50fde20626009aba"
},
{
"input": "SELECT * FROM t WHERE t.a IN (1, 2) AND t.b = 3",
"expectedParts": ["RawStmt", "stmt", "SelectStmt", "fromClause", "RangeVar", "inh", "true", "relname", "t", "relpersistence", "p", "limitOption", "LIMIT_OPTION_DEFAULT", "op", "SETOP_NONE", "targetList", "ResTarget", "val", "ColumnRef", "fields", "A_Star", "whereClause", "BoolExpr", "args", "A_Expr", "kind", "AEXPR_OP", "lexpr", "ColumnRef", "fields", "String", "str", "t", "String", "str", "a", "name", "String", "str", "=", "A_Expr", "kind", "AEXPR_OP", "lexpr", "ColumnRef", "fields", "String", "str", "t", "String", "str", "b", "name", "String", "str", "=", "boolop", "AND_EXPR"],
"expectedHash": "346aea01be9173b6"
},
{
"input": "SELECT * FROM t WHERE t.b = 3 AND t.a IN (1, 2)",
"expectedParts": ["RawStmt", "stmt", "SelectStmt", "fromClause", "RangeVar", "inh", "true", "relname", "t", "relpersistence", "p", "limitOption", "LIMIT_OPTION_DEFAULT", "op", "SETOP_NONE", "targetList", "ResTarget", "val", "ColumnRef", "fields", "A_Star", "whereClause", "BoolExpr", "args", "A_Expr", "kind", "AEXPR_OP", "lexpr", "ColumnRef", "fields", "String", "str", "t", "String", "str", "a", "name", "String", "str", "=", "A_Expr", "kind", "AEXPR_OP", "lexpr", "ColumnRef", "fields", "String", "str", "t", "String", "str", "b", "name", "String", "str", "=", "boolop", "AND_EXPR"],
"expectedHash": "346aea01be9173b6"
},
{
"input": "SELECT * FROM t WHERE a && '[1,2]'",
"expectedParts": ["RawStmt", "stmt", "SelectStmt", "fromClause", "RangeVar", "inh", "true", "relname", "t", "relpersistence", "p", "limitOption", "LIMIT_OPTION_DEFAULT", "op", "SETOP_NONE", "targetList", "ResTarget", "val", "ColumnRef", "fields", "A_Star", "whereClause", "A_Expr", "kind", "AEXPR_OP", "lexpr", "ColumnRef", "fields", "String", "str", "a", "name", "String", "str", "&&"],
"expectedHash": "673f199f13dfe665"
},
{
"input": "SELECT * FROM t WHERE a && '[1,2]'::int4range",
"expectedParts": ["RawStmt", "stmt", "SelectStmt", "fromClause", "RangeVar", "inh", "true", "relname", "t", "relpersistence", "p", "limitOption", "LIMIT_OPTION_DEFAULT", "op", "SETOP_NONE", "targetList", "ResTarget", "val", "ColumnRef", "fields", "A_Star", "whereClause", "A_Expr", "kind", "AEXPR_OP", "lexpr", "ColumnRef", "fields", "String", "str", "a", "name", "String", "str", "&&"],
"expectedHash": "673f199f13dfe665"
},
{
"input": "SELECT * FROM t_20210301_x",
"expectedParts": ["RawStmt", "stmt", "SelectStmt", "fromClause", "RangeVar", "inh", "true", "relname", "t__x", "relpersistence", "p", "limitOption", "LIMIT_OPTION_DEFAULT", "op", "SETOP_NONE", "targetList", "ResTarget", "val", "ColumnRef", "fields", "A_Star"],
"expectedHash": "6f8169980cd70a25"
},
{
"input": "SELECT * FROM t_20210302_x",
"expectedParts": ["RawStmt", "stmt", "SelectStmt", "fromClause", "RangeVar", "inh", "true", "relname", "t__x", "relpersistence", "p", "limitOption", "LIMIT_OPTION_DEFAULT", "op", "SETOP_NONE", "targetList", "ResTarget", "val", "ColumnRef", "fields", "A_Star"],
"expectedHash": "6f8169980cd70a25"
},
{
"input": "SELECT * FROM t_20210302_y",
"expectedParts": ["RawStmt", "stmt", "SelectStmt", "fromClause", "RangeVar", "inh", "true", "relname", "t__y", "relpersistence", "p", "limitOption", "LIMIT_OPTION_DEFAULT", "op", "SETOP_NONE", "targetList", "ResTarget", "val", "ColumnRef", "fields", "A_Star"],
"expectedHash": "d357dac4a24fcf1b"
},
{
"input": "SELECT * FROM t_1",
"expectedParts": ["RawStmt", "stmt", "SelectStmt", "fromClause", "RangeVar", "inh", "true", "relname", "t_1", "relpersistence", "p", "limitOption", "LIMIT_OPTION_DEFAULT", "op", "SETOP_NONE", "targetList", "ResTarget", "val", "ColumnRef", "fields", "A_Star"],
"expectedHash": "018bd9230646143e"
},
{
"input": "SELECT * FROM t_2",
"expectedParts": ["RawStmt", "stmt", "SelectStmt", "fromClause", "RangeVar", "inh", "true", "relname", "t_2", "relpersistence", "p", "limitOption", "LIMIT_OPTION_DEFAULT", "op", "SETOP_NONE", "targetList", "ResTarget", "val", "ColumnRef", "fields", "A_Star"],
"expectedHash": "3f1444da570c1a66"
}
]