diff options
author | drh <drh@noemail.net> | 2010-04-26 19:17:26 +0000 |
---|---|---|
committer | drh <drh@noemail.net> | 2010-04-26 19:17:26 +0000 |
commit | 8c6f666b26cd8244da3d7fb6da478b43105bc679 (patch) | |
tree | e9ba3b47bce4b9e584f97c3f785619c8477e6ba8 /src/sqliteInt.h | |
parent | 93791ea0bac51d58675a54621e3fd7a1cce75d36 (diff) | |
download | sqlite-8c6f666b26cd8244da3d7fb6da478b43105bc679.tar.gz sqlite-8c6f666b26cd8244da3d7fb6da478b43105bc679.zip |
Optimization: Convert an ORDER BY clause into a no-op if the query also
contains a GROUP BY clause that will force the same output order.
FossilOrigin-Name: ca9d86baf70f210d331ce93102177c8005c494cb
Diffstat (limited to 'src/sqliteInt.h')
-rw-r--r-- | src/sqliteInt.h | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/src/sqliteInt.h b/src/sqliteInt.h index 6e6ec72ac..d4f8d23aa 100644 --- a/src/sqliteInt.h +++ b/src/sqliteInt.h @@ -925,7 +925,8 @@ struct sqlite3 { #define SQLITE_IndexSort 0x04 /* Disable indexes for sorting */ #define SQLITE_IndexSearch 0x08 /* Disable indexes for searching */ #define SQLITE_IndexCover 0x10 /* Disable index covering table */ -#define SQLITE_OptMask 0x1f /* Mask of all disablable opts */ +#define SQLITE_GroupByOrder 0x20 /* Disable GROUPBY cover of ORDERBY */ +#define SQLITE_OptMask 0xff /* Mask of all disablable opts */ /* ** Possible values for the sqlite.magic field. @@ -2689,6 +2690,7 @@ void sqlite3Vacuum(Parse*); int sqlite3RunVacuum(char**, sqlite3*); char *sqlite3NameFromToken(sqlite3*, Token*); int sqlite3ExprCompare(Expr*, Expr*); +int sqlite3ExprListCompare(ExprList*, ExprList*); void sqlite3ExprAnalyzeAggregates(NameContext*, Expr*); void sqlite3ExprAnalyzeAggList(NameContext*,ExprList*); Vdbe *sqlite3GetVdbe(Parse*); |