Many hyperlinks are disabled.
Use anonymous login
to enable hyperlinks.
Overview
Comment: | Updates to reflect changes in 3.14.0. The "expr" syntax diagram is changed to show the ability to put table-valued functions on the RHS of an IN operator. Related text changes. Update the change log. |
---|---|
Downloads: | Tarball | ZIP archive |
Timelines: | family | ancestors | descendants | both | trunk |
Files: | files | file ages | folders |
SHA1: |
24cd5438cc5a98994259f0c66675f669 |
User & Date: | drh 2016-07-12 20:54:05.095 |
Context
2016-07-12
| ||
23:52 | Add the <fancy_format> markup which works like <table_of_contents> but omits the actual table of contents. Begin writing documentation for the carray() function. Fix typos and adjust wording in the CLI document. (check-in: e89a552dc3 user: drh tags: trunk) | |
20:54 | Updates to reflect changes in 3.14.0. The "expr" syntax diagram is changed to show the ability to put table-valued functions on the RHS of an IN operator. Related text changes. Update the change log. (check-in: 24cd5438cc user: drh tags: trunk) | |
2016-07-09
| ||
20:28 | Mention the win32-none VFS and the CACHE_USED_SHARED enhancements in the change log. (check-in: a5f2c520a7 user: drh tags: trunk) | |
Changes
Changes to art/syntax/bubble-generator-data.tcl.
︙ | ︙ | |||
266 267 268 269 270 271 272 273 274 275 276 277 278 279 | {line expr {or ISNULL NOTNULL {line NOT NULL}}} {line expr IS {optx NOT} expr} {line expr {optx NOT} BETWEEN expr AND expr} {line expr {optx NOT} IN {or {line ( {or {} select-stmt {loop expr ,}} )} {line {optx /schema-name .} /table-name} } } {line {optx {optx NOT} EXISTS} ( select-stmt )} {line CASE {optx expr} {loop {line WHEN expr THEN expr} {}} {optx ELSE expr} END} {line raise-function} } | > > | 266 267 268 269 270 271 272 273 274 275 276 277 278 279 280 281 | {line expr {or ISNULL NOTNULL {line NOT NULL}}} {line expr IS {optx NOT} expr} {line expr {optx NOT} BETWEEN expr AND expr} {line expr {optx NOT} IN {or {line ( {or {} select-stmt {loop expr ,}} )} {line {optx /schema-name .} /table-name} {line {optx /schema-name .} /table-function ( {or {toploop expr ,} {}} ) } } } {line {optx {optx NOT} EXISTS} ( select-stmt )} {line CASE {optx expr} {loop {line WHEN expr THEN expr} {}} {optx ELSE expr} END} {line raise-function} } |
︙ | ︙ |
Changes to art/syntax/expr.gif.
cannot compute difference between binary files
Changes to pages/changes.in.
︙ | ︙ | |||
37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 | together with an [eponymous virtual table] that provides access to the measurements. <li>Improved algorithm for running queries with both an ORDER BY and a LIMIT where only the inner-most loop naturally generates rows in the correct order. <li>Enhancements to Lemon parser generator, so that it generates a faster parser. <li>The [PRAGMA compile_options] command now attempts to show the version number of the compiler that generated the library. <li>Added the "win32-none" VFS, analogous to the "unix-none" VFS, that works like the default "win32" VFS except that it ignores all file locks. } chng {2016-05-18 (3.13.0)} { <li>Postpone I/O associated with TEMP files for as long as possible, with the hope that the I/O can ultimately be avoided completely. <li>Merged the [session] extension into trunk. <li>Added the ".auth ON|OFF" command to the [command-line shell]. | > > > > > | 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 | together with an [eponymous virtual table] that provides access to the measurements. <li>Improved algorithm for running queries with both an ORDER BY and a LIMIT where only the inner-most loop naturally generates rows in the correct order. <li>Enhancements to Lemon parser generator, so that it generates a faster parser. <li>The [PRAGMA compile_options] command now attempts to show the version number of the compiler that generated the library. <li>Enhance [PRAGMA table_info] so that it provides information about [eponymous virtual tables]. <li>Added the "win32-none" VFS, analogous to the "unix-none" VFS, that works like the default "win32" VFS except that it ignores all file locks. <li>The query planner uses a full scan of a [partial index] instead of a full scan of the main table, in cases where that makes sense. <li>Allow [table-valued functions] to appear on the right-hand side of an [IN operator]. } chng {2016-05-18 (3.13.0)} { <li>Postpone I/O associated with TEMP files for as long as possible, with the hope that the I/O can ultimately be avoided completely. <li>Merged the [session] extension into trunk. <li>Added the ".auth ON|OFF" command to the [command-line shell]. |
︙ | ︙ |
Changes to pages/datatype3.in.
︙ | ︙ | |||
81 82 83 84 85 86 87 | noon in Greenwich on November 24, 4714 B.C. according to the proleptic Gregorian calendar. <li><b>INTEGER</b> as Unix Time, the number of seconds since 1970-01-01 00:00:00 UTC. </ul>)^ <p>Applications can chose to store dates and times in any of these | | | | 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 | noon in Greenwich on November 24, 4714 B.C. according to the proleptic Gregorian calendar. <li><b>INTEGER</b> as Unix Time, the number of seconds since 1970-01-01 00:00:00 UTC. </ul>)^ <p>Applications can chose to store dates and times in any of these formats and freely convert between formats using the built-in [date and time functions].</p> <tcl>hd_fragment affinity affinity {column affinity} {type affinity} {*affinities}</tcl> <h1>Type Affinity</h1> <p> In order to maximize compatibility between SQLite and other database |
︙ | ︙ |
Changes to pages/lang.in.
︙ | ︙ | |||
2075 2076 2077 2078 2079 2080 2081 2082 2083 2084 | <h3>The IN and NOT IN operators</h3> <p>^The IN and NOT IN operators take a single scalar operand on the left and a vector operand on the right formed by an explicit list of zero or more scalars or by a single subquery. ^When the right operand of an IN or NOT IN operator is a subquery, the subquery must have a single result column. ^When the right operand is an empty set, the result of IN is false and the result of NOT IN is true, regardless of the left operand and even if the left operand is NULL. | > > > | | 2075 2076 2077 2078 2079 2080 2081 2082 2083 2084 2085 2086 2087 2088 2089 2090 2091 2092 2093 2094 2095 | <h3>The IN and NOT IN operators</h3> <p>^The IN and NOT IN operators take a single scalar operand on the left and a vector operand on the right formed by an explicit list of zero or more scalars or by a single subquery. ^When the right operand of an IN or NOT IN operator is a subquery, the subquery must have a single result column. ^The "subquery" on the right-hand side of an IN operator can be a table name or [table-valued function] name in which case the subquery is understood to be "(SELECT * FROM <i>name</i>)". ^When the right operand is an empty set, the result of IN is false and the result of NOT IN is true, regardless of the left operand and even if the left operand is NULL. <p>^(The result of an IN or NOT IN operator is determined by the following matrix: <center> <table border=1> <tr> <th>Left operand <br>is NULL <th>Right operand <br>contains NULL |
︙ | ︙ |