SELECT ("*") reproduces as SELECT (*), which isn't valid SQL.
On the other hand,
SELECT FROM t WHERE a = COUNT(*) is valid SQL.
In both cases, * is a QualifiedName{"a"} but for the first, the corresponding String() must be "*" (not *).
I've looked around for an obvious fix for this, but I'm thinking this is something that should be done at the grammar level by having * as a keyword of some sorts.
this, again, found by fuzzing. ping @dvyukov.
edit: even easier: SELECT "*" -> SELECT *.
SELECT ("*")reproduces asSELECT (*), which isn't valid SQL.On the other hand,
SELECT FROM t WHERE a = COUNT(*)is valid SQL.In both cases,
*is aQualifiedName{"a"}but for the first, the correspondingString()must be"*"(not*).I've looked around for an obvious fix for this, but I'm thinking this is something that should be done at the grammar level by having
*as a keyword of some sorts.this, again, found by fuzzing. ping @dvyukov.
edit: even easier:
SELECT "*"->SELECT *.