Sorry, it was a bad wording. The question was specifically about identifiers that *starts* with a dollar sign, such as "$jk".
On Tue, Aug 16, 2022 at 9:53 PM Julian Hyde <[email protected]> wrote: > Probably a documentation mistake. Many databases allow ‘$’ and ‘#’ in > identifiers. For example the following work on Oracle and MySQL: > > CREATE TABLE t (i INTEGER); > SELECT i AS j$k FROM t; > > And this works on Oracle: > > SELECT i AS j#k FROM t; > > Julian > > > > > On Aug 16, 2022, at 12:11 AM, Itiel Sadeh <[email protected]> > wrote: > > > > Hello all, > > > > I've notice the following definition of identifier in parser.jj: > > < IDENTIFIER: <LETTER> (<LETTER>|<DIGIT>)* > > > > > Where the <LETTER> definition includes the dollar sign ($). > > The Calcite documentation, as well as other databases doesn't permit > > identifiers to start with dollar sign: > > > >> Unquoted identifiers, such as emp, must start with a letter and can only > >> contain letters, digits, and underscores. They are implicitly converted > to > >> upper case. > >> > > > > Is there a reason for this? > > > > Thanks, > > Itiel > >
