parse
DELETE FROM a
----
DELETE FROM a
DELETE FROM a -- fully parenthesized
DELETE FROM a -- literals removed
DELETE FROM _ -- identifiers removed

parse
EXPLAIN DELETE FROM a
----
EXPLAIN DELETE FROM a
EXPLAIN DELETE FROM a -- fully parenthesized
EXPLAIN DELETE FROM a -- literals removed
EXPLAIN DELETE FROM _ -- identifiers removed

parse
DELETE FROM a.b
----
DELETE FROM a.b
DELETE FROM a.b -- fully parenthesized
DELETE FROM a.b -- literals removed
DELETE FROM _._ -- identifiers removed

parse
DELETE FROM a.b@c
----
DELETE FROM a.b@c
DELETE FROM a.b@c -- fully parenthesized
DELETE FROM a.b@c -- literals removed
DELETE FROM _._@_ -- identifiers removed

parse
DELETE FROM a WHERE a = b
----
DELETE FROM a WHERE a = b
DELETE FROM a WHERE ((a) = (b)) -- fully parenthesized
DELETE FROM a WHERE a = b -- literals removed
DELETE FROM _ WHERE _ = _ -- identifiers removed

parse
DELETE FROM a WHERE a = b LIMIT c
----
DELETE FROM a WHERE a = b LIMIT c
DELETE FROM a WHERE ((a) = (b)) LIMIT (c) -- fully parenthesized
DELETE FROM a WHERE a = b LIMIT c -- literals removed
DELETE FROM _ WHERE _ = _ LIMIT _ -- identifiers removed

parse
DELETE FROM a WHERE a = b ORDER BY c
----
DELETE FROM a WHERE a = b ORDER BY c
DELETE FROM a WHERE ((a) = (b)) ORDER BY (c) -- fully parenthesized
DELETE FROM a WHERE a = b ORDER BY c -- literals removed
DELETE FROM _ WHERE _ = _ ORDER BY _ -- identifiers removed

parse
DELETE FROM a WHERE a = b ORDER BY c LIMIT d
----
DELETE FROM a WHERE a = b ORDER BY c LIMIT d
DELETE FROM a WHERE ((a) = (b)) ORDER BY (c) LIMIT (d) -- fully parenthesized
DELETE FROM a WHERE a = b ORDER BY c LIMIT d -- literals removed
DELETE FROM _ WHERE _ = _ ORDER BY _ LIMIT _ -- identifiers removed

parse
DELETE FROM a WHERE a = b RETURNING a, b
----
DELETE FROM a WHERE a = b RETURNING a, b
DELETE FROM a WHERE ((a) = (b)) RETURNING (a), (b) -- fully parenthesized
DELETE FROM a WHERE a = b RETURNING a, b -- literals removed
DELETE FROM _ WHERE _ = _ RETURNING _, _ -- identifiers removed

parse
DELETE FROM a WHERE a = b RETURNING 1, 2
----
DELETE FROM a WHERE a = b RETURNING 1, 2
DELETE FROM a WHERE ((a) = (b)) RETURNING (1), (2) -- fully parenthesized
DELETE FROM a WHERE a = b RETURNING _, _ -- literals removed
DELETE FROM _ WHERE _ = _ RETURNING 1, 2 -- identifiers removed

parse
DELETE FROM a WHERE a = b RETURNING a + b
----
DELETE FROM a WHERE a = b RETURNING a + b
DELETE FROM a WHERE ((a) = (b)) RETURNING ((a) + (b)) -- fully parenthesized
DELETE FROM a WHERE a = b RETURNING a + b -- literals removed
DELETE FROM _ WHERE _ = _ RETURNING _ + _ -- identifiers removed

parse
DELETE FROM a WHERE a = b RETURNING NOTHING
----
DELETE FROM a WHERE a = b RETURNING NOTHING
DELETE FROM a WHERE ((a) = (b)) RETURNING NOTHING -- fully parenthesized
DELETE FROM a WHERE a = b RETURNING NOTHING -- literals removed
DELETE FROM _ WHERE _ = _ RETURNING NOTHING -- identifiers removed

parse
DELETE FROM a WHERE a = b ORDER BY c LIMIT d RETURNING e
----
DELETE FROM a WHERE a = b ORDER BY c LIMIT d RETURNING e
DELETE FROM a WHERE ((a) = (b)) ORDER BY (c) LIMIT (d) RETURNING (e) -- fully parenthesized
DELETE FROM a WHERE a = b ORDER BY c LIMIT d RETURNING e -- literals removed
DELETE FROM _ WHERE _ = _ ORDER BY _ LIMIT _ RETURNING _ -- identifiers removed

parse
DELETE FROM ONLY a WHERE a = b
----
DELETE FROM a WHERE a = b -- normalized!
DELETE FROM a WHERE ((a) = (b)) -- fully parenthesized
DELETE FROM a WHERE a = b -- literals removed
DELETE FROM _ WHERE _ = _ -- identifiers removed

parse
DELETE FROM a * WHERE a = b
----
DELETE FROM a WHERE a = b -- normalized!
DELETE FROM a WHERE ((a) = (b)) -- fully parenthesized
DELETE FROM a WHERE a = b -- literals removed
DELETE FROM _ WHERE _ = _ -- identifiers removed

parse
DELETE FROM ONLY a * WHERE a = b
----
DELETE FROM a WHERE a = b -- normalized!
DELETE FROM a WHERE ((a) = (b)) -- fully parenthesized
DELETE FROM a WHERE a = b -- literals removed
DELETE FROM _ WHERE _ = _ -- identifiers removed

parse
DELETE FROM a USING b
----
DELETE FROM a USING b
DELETE FROM a USING b -- fully parenthesized
DELETE FROM a USING b -- literals removed
DELETE FROM _ USING _ -- identifiers removed

parse
DELETE FROM a USING b WHERE c = d
----
DELETE FROM a USING b WHERE c = d
DELETE FROM a USING b WHERE ((c) = (d)) -- fully parenthesized
DELETE FROM a USING b WHERE c = d -- literals removed
DELETE FROM _ USING _ WHERE _ = _ -- identifiers removed

parse
DELETE FROM a USING b WHERE c = d AND e = f
----
DELETE FROM a USING b WHERE (c = d) AND (e = f) -- normalized!
DELETE FROM a USING b WHERE ((((c) = (d))) AND (((e) = (f)))) -- fully parenthesized
DELETE FROM a USING b WHERE (c = d) AND (e = f) -- literals removed
DELETE FROM _ USING _ WHERE (_ = _) AND (_ = _) -- identifiers removed

parse
DELETE FROM a USING b, c WHERE d > e AND e < f
----
DELETE FROM a USING b, c WHERE (d > e) AND (e < f) -- normalized!
DELETE FROM a USING b, c WHERE ((((d) > (e))) AND (((e) < (f)))) -- fully parenthesized
DELETE FROM a USING b, c WHERE (d > e) AND (e < f) -- literals removed
DELETE FROM _ USING _, _ WHERE (_ > _) AND (_ < _) -- identifiers removed

parse
DELETE FROM a USING b, c, d AS other WHERE e = f AND g = h OR i = j
----
DELETE FROM a USING b, c, d AS other WHERE ((e = f) AND (g = h)) OR (i = j) -- normalized!
DELETE FROM a USING b, c, d AS other WHERE ((((((e) = (f))) AND (((g) = (h))))) OR (((i) = (j)))) -- fully parenthesized
DELETE FROM a USING b, c, d AS other WHERE ((e = f) AND (g = h)) OR (i = j) -- literals removed
DELETE FROM _ USING _, _, _ AS _ WHERE ((_ = _) AND (_ = _)) OR (_ = _) -- identifiers removed

parse
DELETE FROM a USING b AS one, c AS two, d AS three, e AS four WHERE f != g AND g = h RETURNING e
----
DELETE FROM a USING b AS one, c AS two, d AS three, e AS four WHERE (f != g) AND (g = h) RETURNING e -- normalized!
DELETE FROM a USING b AS one, c AS two, d AS three, e AS four WHERE ((((f) != (g))) AND (((g) = (h)))) RETURNING (e) -- fully parenthesized
DELETE FROM a USING b AS one, c AS two, d AS three, e AS four WHERE (f != g) AND (g = h) RETURNING e -- literals removed
DELETE FROM _ USING _ AS _, _ AS _, _ AS _, _ AS _ WHERE (_ != _) AND (_ = _) RETURNING _ -- identifiers removed

parse
DELETE BATCH FROM a
----
DELETE BATCH FROM a
DELETE BATCH FROM a -- fully parenthesized
DELETE BATCH FROM a -- literals removed
DELETE BATCH FROM _ -- identifiers removed

parse
DELETE BATCH (SIZE 1) FROM a
----
DELETE BATCH (SIZE 1) FROM a
DELETE BATCH (SIZE 1) FROM a -- fully parenthesized
DELETE BATCH (SIZE 1) FROM a -- literals removed
DELETE BATCH (SIZE 1) FROM _ -- identifiers removed

parse
DELETE BATCH (SIZE (SELECT 1)) FROM a
----
DELETE BATCH (SIZE (SELECT 1)) FROM a
DELETE BATCH (SIZE (SELECT (1))) FROM a -- fully parenthesized
DELETE BATCH (SIZE (SELECT _)) FROM a -- literals removed
DELETE BATCH (SIZE (SELECT 1)) FROM _ -- identifiers removed
