Enrico Weigelt <weigelt@metux.de> writes:
> * Tom Lane <tgl@sss.pgh.pa.us> [2004-03-04 11:24:11 -0500]:
>> Double quotes are for names (identifiers). Single quotes are
>> for string literals (constants).
> BTW: is this general SQL syntax or just PostgeSQL ?
This is SQL92 standard behavior. Relevant extracts from the standard:
<delimited identifier> ::=
<double quote> <delimited identifier body> <double quote>
<character string literal> ::=
[ <introducer><character set specification> ]
<quote> [ <character representation>... ] <quote>
[ { <separator>... <quote> [ <character representation>... ] <quote> }... ]
<double quote> ::= "
<quote> ::= '
> mysql does no distinction (which is IMHO very unclean),
How can they have no distinction? Suppose I write
select 'col' from tab;
select "col" from tab;
If there is a column tab.col, what am I going to get in each case?
regards, tom lane