Documentation updates. (CVS 2726)
FossilOrigin-Name: 6ec8883c366532948e619830ff7d9f63b79fc08b
This commit is contained in:
parent
22d6a53a77
commit
e1547a2f1c
12
manifest
12
manifest
@ -1,5 +1,5 @@
|
||||
C ON-clause\sterms\sin\sa\sLEFT\sJOIN\sthat\srestrict\sonly\sthe\sleft\stable,\sshould\snot\nreally\srestrict\sthe\sleft\stable\sbut\sinstead\srows\sthat\sfail\sto\smeet\sthe\scondition\nto\sbe\sjoined\swith\sNULL\srows\sfrom\sthe\sright\stable.\s(CVS\s2725)
|
||||
D 2005-09-19T21:05:49
|
||||
C Documentation\supdates.\s(CVS\s2726)
|
||||
D 2005-09-20T01:36:30
|
||||
F Makefile.in 12784cdce5ffc8dfb707300c34e4f1eb3b8a14f1
|
||||
F Makefile.linux-gcc 06be33b2a9ad4f005a5f42b22c4a19dab3cbb5c7
|
||||
F README 9c4e2d6706bdcc3efdd773ce752a8cdab4f90028
|
||||
@ -300,7 +300,7 @@ F www/omitted.tcl 658ebdc83781ac419dc8a08b3f6cf93929023470
|
||||
F www/opcode.tcl 5bd68059416b223515a680d410a9f7cb6736485f
|
||||
F www/optimizer.tcl d6812a10269bd0d7c488987aac0ad5036cace9dc
|
||||
F www/optimizing.tcl f0b2538988d1bbad16cbfe63ec6e8f48c9eb04e5
|
||||
F www/optoverview.tcl 5ff8a1c38722fa9f5cb3e1b8010f6b91c5a45693
|
||||
F www/optoverview.tcl 28b6f114a33bfd91bbe3440611ceed6090587211
|
||||
F www/pragma.tcl 44f7b665ca598ad24724f35991653638a36a6e3f
|
||||
F www/quickstart.tcl 6f6f694b6139be2d967b1492eb9a6bdf7058aa60
|
||||
F www/speed.tcl 656ed5be8cc9d536353e1a96927b925634a62933
|
||||
@ -311,7 +311,7 @@ F www/tclsqlite.tcl ddcf912ea48695603c8ed7efb29f0812ef8d1b49
|
||||
F www/vdbe.tcl 87a31ace769f20d3627a64fa1fade7fed47b90d0
|
||||
F www/version3.tcl a99cf5f6d8bd4d5537584a2b342f0fb9fa601d8b
|
||||
F www/whentouse.tcl 97e2b5cd296f7d8057e11f44427dea8a4c2db513
|
||||
P b32e9ec2480f9da2c2ea705ed3c88ca77b77cf2a
|
||||
R 30beedb46fba1ce2f76a3f1396f53cb5
|
||||
P ea10f9785e3c5248dafcc297f3a2c5465b6e0dba
|
||||
R 6ad171a801eb8b84ac88c34ad2f04d27
|
||||
U drh
|
||||
Z a986dad9151bb581e7854782adc6d5e8
|
||||
Z 23a34f97623654d558cd9b041aa96deb
|
||||
|
@ -1 +1 @@
|
||||
ea10f9785e3c5248dafcc297f3a2c5465b6e0dba
|
||||
6ec8883c366532948e619830ff7d9f63b79fc08b
|
@ -1,7 +1,7 @@
|
||||
#
|
||||
# Run this TCL script to generate HTML for the goals.html file.
|
||||
#
|
||||
set rcsid {$Id: optoverview.tcl,v 1.3 2005/08/31 13:48:35 drh Exp $}
|
||||
set rcsid {$Id: optoverview.tcl,v 1.4 2005/09/20 01:36:30 drh Exp $}
|
||||
source common.tcl
|
||||
header {The SQLite Query Optimizer Overview}
|
||||
|
||||
@ -25,8 +25,8 @@ proc IMAGE {name {caption {}}} {
|
||||
puts "</center>"
|
||||
}
|
||||
proc PARAGRAPH {text} {
|
||||
regsub -all "/(\[^\n/\]+)/" $text {<i>\1</i>} t2
|
||||
regsub -all "\\*(\[^\n*\]+)\\*" $t2 {<tt><b><big>\1</big></b></tt>} t3
|
||||
# regsub -all "/(\[a-zA-Z0-9\]+)/" $text {<i>\1</i>} t2
|
||||
regsub -all "\\*(\[^\n*\]+)\\*" $text {<tt><b><big>\1</big></b></tt>} t3
|
||||
puts "<p>$t3</p>\n"
|
||||
}
|
||||
set level(0) 0
|
||||
@ -165,7 +165,7 @@ PARAGRAPH {
|
||||
virtual terms themselves never causes tests to be performed on
|
||||
input rows.
|
||||
Thus if the BETWEEN term is not used as an index constraint and
|
||||
instead must be used to test input rows, the /expr1/ expression is
|
||||
instead must be used to test input rows, the <i>expr1</i> expression is
|
||||
only evaluated once.
|
||||
}
|
||||
|
||||
@ -187,7 +187,7 @@ SYNTAX {
|
||||
PARAGRAPH {
|
||||
The rewritten term then might go on to constraint an index using the
|
||||
normal rules for *IN* operators.
|
||||
Note that /column/ must be the same column in every OR-connected subterm,
|
||||
Note that <i>column</i> must be the same column in every OR-connected subterm,
|
||||
although the column can occur on either the left or the right side of
|
||||
the *=* operator.
|
||||
}
|
||||
@ -271,12 +271,12 @@ PARAGRAPH {
|
||||
}
|
||||
PARAGRAPH {
|
||||
Suppose the initial sequence of non-wildcard characters on the right-hand
|
||||
side of the LIKE or GLOB operator is /x/. We are using a single
|
||||
side of the LIKE or GLOB operator is <i>x</i>. We are using a single
|
||||
character to denote this non-wildcard prefix but the reader should
|
||||
understand that the prefix can consist of more than 1 character.
|
||||
Let /y/ the smallest string that is the same length as /x/ but which
|
||||
compares greater than /x/. For example, if /x/ is *hello* then
|
||||
/y/ would be *hellp*.
|
||||
Let <i>y</i> the smallest string that is the same length as /x/ but which
|
||||
compares greater than <i>x</i>. For example, if <i>x</i> is *hello* then
|
||||
<i>y</i> would be *hellp*.
|
||||
The LIKE and GLOB optimizations consist of adding two virtual terms
|
||||
like this:
|
||||
}
|
||||
@ -288,8 +288,8 @@ PARAGRAPH {
|
||||
tested against each input row even if the virtual terms are used to
|
||||
constrain an index. This is because we do not know what additional
|
||||
constraints may be imposed by characters to the right
|
||||
of the /x/ prefix. However, if there is only a single global wildcard
|
||||
to the right of /x/, then the original LIKE or GLOB test is disabled.
|
||||
of the <i>x</i> prefix. However, if there is only a single global wildcard
|
||||
to the right of <i>x</i>, then the original LIKE or GLOB test is disabled.
|
||||
In other words, if the pattern is like this:
|
||||
}
|
||||
SYNTAX {
|
||||
@ -335,6 +335,14 @@ PARAGRAPH {
|
||||
over the older SQL89 comma-join syntax. They both end up accomplishing
|
||||
exactly the same thing.
|
||||
}
|
||||
PARAGRAPH {
|
||||
Join reordering is automatic and usually works well enough that
|
||||
programmer do not have to think about it. But occasionally some
|
||||
hints from the programmer are needed. For a description of when
|
||||
hints might be necessary and how to provide those hints, see the
|
||||
<a href="http://www.sqlite.org/cvstrac/wiki?p=QueryPlans">QueryPlans</a>
|
||||
page in the Wiki.
|
||||
}
|
||||
|
||||
HEADING 1 {Choosing between multiple indices} multi_index
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user