1
0
mirror of https://github.com/sqlite/sqlite.git synced 2025-10-30 07:05:46 +03:00

Improvements to the query optimizer. This is a work in progress. (CVS 2169)

FossilOrigin-Name: 9b86993ff721b577b920c7c67fb41d3d4355fe88
This commit is contained in:
drh
2004-12-18 18:40:26 +00:00
parent 9ee3cdcba7
commit 51669863a8
6 changed files with 310 additions and 92 deletions

View File

@@ -11,7 +11,7 @@
*************************************************************************
** Internal interface definitions for SQLite.
**
** @(#) $Id: sqliteInt.h,v 1.346 2004/12/07 15:41:49 drh Exp $
** @(#) $Id: sqliteInt.h,v 1.347 2004/12/18 18:40:27 drh Exp $
*/
#ifndef _SQLITEINT_H_
#define _SQLITEINT_H_
@@ -859,6 +859,11 @@ struct IdList {
} *a;
};
/*
** The bitmask datatype defined below is used for various optimizations.
*/
typedef unsigned int Bitmask;
/*
** The following structure describes the FROM clause of a SELECT statement.
** Each table or subquery in the FROM clause is a separate element of
@@ -883,6 +888,7 @@ struct SrcList {
int iCursor; /* The VDBE cursor number used to access this table */
Expr *pOn; /* The ON clause of a join */
IdList *pUsing; /* The USING clause of a join */
Bitmask colUsed; /* Bit N (1<<N) set if column N or pTab is used */
} a[1]; /* One entry for each identifier on the list */
};