import{parse,deparse}from'pgsql-parser';constsql=`MERGE INTO t AS target USING (SELECT 1 AS id) AS source ON target.id = source.id WHEN MATCHED THEN UPDATE SET name = 'x' WHEN NOT MATCHED THEN INSERT (id, name) VALUES (source.id, 'x')`;constast=parse(sql);// succeedsdeparse(ast);// throws: does not handle node type: MergeWhenClauseThe parser handles MERGE (added in PostgreSQL 15) but the deparser has no visitor for MergeWhenClause. Tested on pgsql-deparser@17.18.2.
The parser handles MERGE (added in PostgreSQL 15) but the deparser has no visitor for
MergeWhenClause. Tested onpgsql-deparser@17.18.2.