1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143
|
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
<html><head>
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<meta http-equiv="content-type" content="text/html; charset=UTF-8">
<link href="../sqlite.css" rel="stylesheet">
<title>Prepared Statement Scan Status Opcodes</title>
</head>
<body>
<div class=nosearch>
<a href="../index.html">
<img class="logo" src="../images/sqlite370_banner.gif" alt="SQLite" border="0">
</a>
<div><!-- IE hack to prevent disappearing logo --></div>
<div class="tagline desktoponly">
Small. Fast. Reliable.<br>Choose any three.
</div>
<div class="menu mainmenu">
<ul>
<li><a href="../index.html">Home</a>
<li class='mobileonly'><a href="javascript:void(0)" onclick='toggle_div("submenu")'>Menu</a>
<li class='wideonly'><a href='../about.html'>About</a>
<li class='desktoponly'><a href="../docs.html">Documentation</a>
<li class='desktoponly'><a href="../download.html">Download</a>
<li class='wideonly'><a href='../copyright.html'>License</a>
<li class='desktoponly'><a href="../support.html">Support</a>
<li class='desktoponly'><a href="../prosupport.html">Purchase</a>
<li class='search' id='search_menubutton'>
<a href="javascript:void(0)" onclick='toggle_div("searchmenu")'>Search</a>
</ul>
</div>
<div class="menu submenu" id="submenu">
<ul>
<li><a href='../about.html'>About</a>
<li><a href='../docs.html'>Documentation</a>
<li><a href='../download.html'>Download</a>
<li><a href='../support.html'>Support</a>
<li><a href='../prosupport.html'>Purchase</a>
</ul>
</div>
<div class="searchmenu" id="searchmenu">
<form method="GET" action="search">
<span class="desktoponly">Search for:</span> <input type="text" name="q">
<input type="submit" value="Go">
</form>
</div>
</div>
<script>
function toggle_div(nm) {
var w = document.getElementById(nm);
if( w.style.display=="block" ){
w.style.display = "none";
}else{
w.style.display = "block";
}
}
function div_off(nm){document.getElementById(nm).style.display="none";}
window.onbeforeunload = function(e){div_off("submenu");}
/* Disable the Search feature if we are not operating from CGI, since */
/* Search is accomplished using CGI and will not work without it. */
if( !location.origin.match || !location.origin.match(/http/) ){
document.getElementById("search_menubutton").style.display = "none";
}
/* Used by the Hide/Show button beside syntax diagrams, to toggle the */
function hideorshow(btn,obj){
var x = document.getElementById(obj);
var b = document.getElementById(btn);
if( x.style.display!='none' ){
x.style.display = 'none';
b.innerHTML='show';
}else{
x.style.display = '';
b.innerHTML='hide';
}
return false;
}
</script>
</div>
<!-- keywords: SQLITE_SCANSTAT_EST SQLITE_SCANSTAT_EXPLAIN SQLITE_SCANSTAT_NAME SQLITE_SCANSTAT_NLOOP SQLITE_SCANSTAT_NVISIT SQLITE_SCANSTAT_SELECTID {scanstatus options} -->
<div class=nosearch>
<a href="intro.html"><h2>SQLite C Interface</h2></a>
<h2>Prepared Statement Scan Status Opcodes</h2>
</div>
<blockquote><pre>
#define SQLITE_SCANSTAT_NLOOP 0
#define SQLITE_SCANSTAT_NVISIT 1
#define SQLITE_SCANSTAT_EST 2
#define SQLITE_SCANSTAT_NAME 3
#define SQLITE_SCANSTAT_EXPLAIN 4
#define SQLITE_SCANSTAT_SELECTID 5
</pre></blockquote>
<p>
The following constants can be used for the T parameter to the
<a href="../c3ref/stmt_scanstatus.html">sqlite3_stmt_scanstatus(S,X,T,V)</a> interface. Each constant designates a
different metric for sqlite3_stmt_scanstatus() to return.</p>
<p>When the value returned to V is a string, space to hold that string is
managed by the prepared statement S and will be automatically freed when
S is finalized.</p>
<p><dl>
<a name="sqlitescanstatnloop"></a>
<dt>SQLITE_SCANSTAT_NLOOP</dt>
<dd>The <a href="../c3ref/int64.html">sqlite3_int64</a> variable pointed to by the T parameter will be
set to the total number of times that the X-th loop has run.</dd></p>
<p><a name="sqlitescanstatnvisit"></a>
<dt>SQLITE_SCANSTAT_NVISIT</dt>
<dd>The <a href="../c3ref/int64.html">sqlite3_int64</a> variable pointed to by the T parameter will be set
to the total number of rows examined by all iterations of the X-th loop.</dd></p>
<p><a name="sqlitescanstatest"></a>
<dt>SQLITE_SCANSTAT_EST</dt>
<dd>The "double" variable pointed to by the T parameter will be set to the
query planner's estimate for the average number of rows output from each
iteration of the X-th loop. If the query planner's estimates was accurate,
then this value will approximate the quotient NVISIT/NLOOP and the
product of this value for all prior loops with the same SELECTID will
be the NLOOP value for the current loop.</p>
<p><a name="sqlitescanstatname"></a>
<dt>SQLITE_SCANSTAT_NAME</dt>
<dd>The "const char *" variable pointed to by the T parameter will be set
to a zero-terminated UTF-8 string containing the name of the index or table
used for the X-th loop.</p>
<p><a name="sqlitescanstatexplain"></a>
<dt>SQLITE_SCANSTAT_EXPLAIN</dt>
<dd>The "const char *" variable pointed to by the T parameter will be set
to a zero-terminated UTF-8 string containing the <a href="../eqp.html">EXPLAIN QUERY PLAN</a>
description for the X-th loop.</p>
<p><a name="sqlitescanstatselectid"></a>
<dt>SQLITE_SCANSTAT_SELECT</dt>
<dd>The "int" variable pointed to by the T parameter will be set to the
"select-id" for the X-th loop. The select-id identifies which query or
subquery the loop is part of. The main query has a select-id of zero.
The select-id is the same value as is output in the first column
of an <a href="../eqp.html">EXPLAIN QUERY PLAN</a> query.
</dl>
</p><p>See also lists of
<a href="objlist.html">Objects</a>,
<a href="constlist.html">Constants</a>, and
<a href="funclist.html">Functions</a>.</p>
|