sed -r -i \
-e 's/SELECT $/SELECT/' \
-e 's/SELECT DISTINCT $/SELECT DISTINCT/' \
-e 's/WITH $/WITH/' \ # zero matches, new test will be added
-e 's/ARRAY JOIN $/ARRAY JOIN/' \
-e 's/GROUP BY $/GROUP BY/' \
-e 's/ORDER BY $/ORDER BY/' \
-e 's/LIMIT ([0-9]+) BY $/LIMIT \1 BY/' \ # zero matches, new test will be added
tests/queries/*/*.sql \
tests/queries/*/*.reference
(With except for tests/queries/0_stateless/00751_default_databasename_for_view.reference)
Otherwise the following query will be optimized incorrectly:
SELECT
*,
any(arrayJoin([[], []]))
FROM numbers(1)
GROUP BY number
And the result will be:
┌─number─┬─arrayJoin(array(array(), array()))─┐
│ 0 │ [] │
│ 0 │ [] │
└────────┴────────────────────────────────────┘
While should be:
┌─number─┬─any(arrayJoin(array(array(), array())))─┐
│ 0 │ [] │
└────────┴─────────────────────────────────────────┘