Make COUNT,SUM case insensitive.

This commit is contained in:
Bruce Momjian 1996-12-03 05:06:35 +00:00
parent 514d69bdbf
commit f2af019645
2 changed files with 21 additions and 3 deletions

View File

@ -8,7 +8,7 @@
* *
* *
* IDENTIFICATION * IDENTIFICATION
* $Header: /cvsroot/pgsql/src/backend/parser/scan.l,v 1.5 1996/11/30 03:38:09 momjian Exp $ * $Header: /cvsroot/pgsql/src/backend/parser/scan.l,v 1.6 1996/12/03 05:06:14 momjian Exp $
* *
*------------------------------------------------------------------------- *-------------------------------------------------------------------------
*/ */
@ -164,7 +164,22 @@ other .
if (keyword != NULL) { if (keyword != NULL) {
return (keyword->value); return (keyword->value);
} else { } else {
yylval.str = pstrdup((char*)yytext); if (toupper(((char *)yytext)[0]) == 'A' &&
strcasecmp((char *)yytext,"AVG") == 0)
yylval.str = pstrdup("avg");
else if (toupper(((char *)yytext)[0]) == 'C' &&
strcasecmp((char *)yytext,"COUNT") == 0)
yylval.str = pstrdup("count");
else if (toupper(((char *)yytext)[0]) == 'M' &&
strcasecmp((char *)yytext,"MAX") == 0)
yylval.str = pstrdup("max");
else if (toupper(((char *)yytext)[0]) == 'M' &&
strcasecmp((char *)yytext,"MIN") == 0)
yylval.str = pstrdup("min");
else if (toupper(((char *)yytext)[0]) == 'S' &&
strcasecmp((char *)yytext,"SUM") == 0)
yylval.str = pstrdup("sum");
else yylval.str = pstrdup((char*)yytext);
return (IDENT); return (IDENT);
} }
} }

View File

@ -1,6 +1,6 @@
.\" This is -*-nroff-*- .\" This is -*-nroff-*-
.\" XXX standard disclaimer belongs here.... .\" XXX standard disclaimer belongs here....
.\" $Header: /cvsroot/pgsql/src/man/Attic/create_aggregate.l,v 1.1 1996/11/14 10:15:42 scrappy Exp $ .\" $Header: /cvsroot/pgsql/src/man/Attic/create_aggregate.l,v 1.2 1996/12/03 05:06:35 momjian Exp $
.TH "CREATE AGGREGATE" SQL 11/05/95 Postgres95 Postgres95 .TH "CREATE AGGREGATE" SQL 11/05/95 Postgres95 Postgres95
.SH NAME .SH NAME
create aggregate \(em define a new aggregate create aggregate \(em define a new aggregate
@ -70,6 +70,9 @@ Aggregates also require two initial conditions, one for each
transition function. These are specified and stored in the database transition function. These are specified and stored in the database
as fields of type as fields of type
.IR text . .IR text .
.PP
For compatability, aggregates named "avg", "count", "max", "min",
and "sum" are lowercased on input.
.SH EXAMPLE .SH EXAMPLE
This This
.IR avg .IR avg