1
0
mirror of https://github.com/sqlite/sqlite.git synced 2025-08-08 14:02:16 +03:00

added aggregate functions like count(*) (CVS 21)

FossilOrigin-Name: dee7a8be88a95014534b90b96716d9e2e6b16579
This commit is contained in:
drh
2000-05-31 15:34:51 +00:00
parent dce2cbe65f
commit cce7d17614
15 changed files with 1395 additions and 995 deletions

View File

@@ -23,7 +23,7 @@
*************************************************************************
** Internal interface definitions for SQLite.
**
** @(#) $Id: sqliteInt.h,v 1.4 2000/05/31 02:27:49 drh Exp $
** @(#) $Id: sqliteInt.h,v 1.5 2000/05/31 15:34:53 drh Exp $
*/
#include "sqlite.h"
#include "dbbe.h"
@@ -61,6 +61,16 @@
*/
#define ArraySize(X) (sizeof(X)/sizeof(X[0]))
/*
** Integer identifiers for functions.
*/
#define FN_Unknown 0
#define FN_Count 1
#define FN_Min 2
#define FN_Max 3
#define FN_Sum 4
#define FN_Avg 5
/*
** Forward references to structures
*/
@@ -151,6 +161,7 @@ struct ExprList {
Expr *pExpr; /* The list of expressions */
char *zName; /* Token associated with this expression */
int idx; /* ... */
int isAgg; /* True if this is an aggregate like count(*) */
} *a; /* One entry for each expression */
};
@@ -251,3 +262,6 @@ void sqliteCopy(Parse*, Token*, Token*, Token*);
void sqliteVacuum(Parse*, Token*);
int sqliteGlobCompare(const char*,const char*);
int sqliteLikeCompare(const unsigned char*,const unsigned char*);
char *sqliteTableNameFromToken(Token*);
int sqliteExprCheck(Parse*, Expr*, int, int*);
int sqliteFuncId(Token*);