Lines Matching refs:pSelect

18823       Select *pSelect;     /* View definition */  member
19287 Select *pSelect; /* SELECT statement that this AggInfo supports */ member
19412 Select *pSelect; /* EP_xIsSelect and op = IN, EXISTS, SELECT */ member
19666 Select *pSelect; /* A SELECT statement used in place of a table name */ member
20024 ((X)->u4.pSubq->pSelect->selFlags&SF_NestedFrom)!=0)
20539 Select *pSelect; /* SELECT statement or RHS of INSERT INTO SELECT ... */ member
20763 Select *pSelect; /* HAVING to WHERE clause ctx */ member
20828 Select *pSelect; /* The definition of this CTE */ member
21327 SQLITE_PRIVATE void sqlite3GenerateColumnNames(Parse *pParse, Select *pSelect);
32556 Select *pSel = pItem->u4.pSubq->pSelect; in sqlite3_str_vappendf()
33328 sqlite3TreeViewSelect(pView, pCte->pSelect, 0); in sqlite3TreeViewWith()
33405 sqlite3TreeViewSelect(pView, pItem->u4.pSubq->pSelect, 0); in sqlite3TreeViewSrcList()
33897 sqlite3TreeViewSelect(pView, pExpr->x.pSelect, 0); in sqlite3TreeViewExpr()
33903 sqlite3TreeViewSelect(pView, pExpr->x.pSelect, 0); in sqlite3TreeViewExpr()
33920 sqlite3TreeViewSelect(pView, pExpr->x.pSelect, 0); in sqlite3TreeViewExpr()
34004 sqlite3TreeViewSelect(pView, pExpr->pLeft->x.pSelect, 0); in sqlite3TreeViewExpr()
34244 const Select *pSelect, in sqlite3TreeViewInsert() argument
34265 if( pSelect ) n++; in sqlite3TreeViewInsert()
34283 if( pSelect ){ in sqlite3TreeViewInsert()
34286 sqlite3TreeViewSelect(pView, pSelect, 0); in sqlite3TreeViewInsert()
107852 if( sqlite3WalkSelect(pWalker, pExpr->x.pSelect) ) return WRC_Abort;
107945 && sqlite3WalkSelect(pWalker, pItem->u4.pSubq->pSelect)
107999 SQLITE_PRIVATE int sqlite3WalkerDepthIncrease(Walker *pWalker, Select *pSelect){
108000 UNUSED_PARAMETER(pSelect);
108004 SQLITE_PRIVATE void sqlite3WalkerDepthDecrease(Walker *pWalker, Select *pSelect){
108005 UNUSED_PARAMETER(pSelect);
108396 pSel = pItem->u4.pSubq->pSelect;
108703 assert( ExprUseXSelect(pExpr)==0 || pExpr->x.pSelect==0 );
109406 assert( pExpr->x.pSelect );
109410 sqlite3WalkSelect(pWalker, pExpr->x.pSelect);
109415 pExpr->x.pSelect->selFlags |= SF_Correlated;
109544 Select *pSelect, /* The SELECT statement with the ORDER BY clause */
109555 pEList = pSelect->pEList;
109561 nc.pSrcList = pSelect->pSrc;
109619 Select *pSelect /* The SELECT statement containing the ORDER BY */
109627 pOrderBy = pSelect->pOrderBy;
109637 pSelect->pNext = 0;
109638 while( pSelect->pPrior ){
109639 pSelect->pPrior->pNext = pSelect;
109640 pSelect = pSelect->pPrior;
109642 while( pSelect && moreToDo ){
109645 pEList = pSelect->pEList;
109675 iCol = resolveOrderByTermToExprList(pParse, pSelect, pDup);
109677 resolveOrderByTermToExprList(pParse, pSelect, pE);
109708 pSelect = pSelect->pNext;
109732 Select *pSelect, /* The SELECT statement containing the clause */
109746 pEList = pSelect->pEList;
109777 static void windowRemoveExprFromSelect(Select *pSelect, Expr *pExpr){
109778 if( pSelect->pWin ){
109782 sWalker.u.pSelect = pSelect;
109810 Select *pSelect, /* The SELECT statement holding pOrderBy */
109821 nResult = pSelect->pEList->nExpr;
109828 iCol = resolveAsName(pParse, pSelect->pEList, pE2);
109855 for(j=0; j<pSelect->pEList->nExpr; j++){
109856 if( sqlite3ExprCompare(0, pE, pSelect->pEList->a[j].pExpr, -1)==0 ){
109860 windowRemoveExprFromSelect(pSelect, pE);
109865 return sqlite3ResolveOrderGroupBy(pParse, pSelect, pOrderBy, zType);
109932 pSub = p->pSrc->a[0].u4.pSubq->pSelect;
109948 && (pItem->u4.pSubq->pSelect->selFlags & SF_Resolved)==0
109954 sqlite3ResolveSelectNames(pParse, pItem->u4.pSubq->pSelect, pOuterNC);
110058 pSub = p->pSrc->a[0].u4.pSubq->pSelect;
110401 assert( pExpr->x.pSelect!=0 );
110402 assert( pExpr->x.pSelect->pEList!=0 );
110403 assert( pExpr->x.pSelect->pEList->a[0].pExpr!=0 );
110404 return sqlite3ExprAffinity(pExpr->x.pSelect->pEList->a[0].pExpr);
110416 assert( pExpr->iTable==pExpr->pLeft->x.pSelect->pEList->nExpr );
110418 pExpr->pLeft->x.pSelect->pEList->a[pExpr->iColumn].pExpr
110719 aff = sqlite3CompareAffinity(pExpr->x.pSelect->pEList->a[0].pExpr, aff);
110862 return pExpr->x.pSelect->pEList->nExpr;
110889 return pVector->x.pSelect->pEList->a[i].pExpr;
111020 *ppExpr = pVector->x.pSelect->pEList->a[iField].pExpr;
111173 static void heightOfSelect(const Select *pSelect, int *pnHeight){
111175 for(p=pSelect; p; p=p->pPrior){
111201 heightOfSelect(p->x.pSelect, &nHeight);
111353 assert( pRoot->x.pSelect==0 );
111407 SQLITE_PRIVATE void sqlite3PExprAddSelect(Parse *pParse, Expr *pExpr, Select *pSelect){
111409 pExpr->x.pSelect = pSelect;
111414 sqlite3SelectDelete(pParse->db, pSelect);
111731 assert( !ExprUseXSelect(p) || p->x.pSelect==0 );
111743 sqlite3SelectDelete(db, p->x.pSelect);
112037 pNew->x.pSelect = sqlite3SelectDup(db, p->x.pSelect, dupFlags);
112096 pRet->a[i].pSelect = sqlite3SelectDup(db, p->a[i].pSelect, 0);
112118 Select *pSelect = pWalker->u.pSelect;
112123 sqlite3WindowLink(pSelect, pWin);
112128 return p==pWalker->u.pSelect ? WRC_Continue : WRC_Prune;
112136 w.u.pSelect = p;
112234 pNewSubq->pSelect = sqlite3SelectDup(db, pNewSubq->pSelect, flags);
112235 if( pNewSubq->pSelect==0 ){
112927 static int exprSelectWalkTableConstant(Walker *pWalker, Select *pSelect){
112928 assert( pSelect!=0 );
112930 if( (pSelect->selFlags & SF_Correlated)!=0 ){
113335 p = pX->x.pSelect;
113510 ExprList *pEList = pX->x.pSelect->pEList;
113714 Select *pSelect = ExprUseXSelect(pExpr) ? pExpr->x.pSelect : 0;
113724 if( pSelect ){
113725 zRet[i] = sqlite3CompareAffinity(pSelect->pEList->a[i].pExpr, a);
113765 sqlite3SubselectError(pParse, pExpr->x.pSelect->pEList->nExpr, 1);
113793 assert( pExpr->x.pSelect!=0 );
113794 assert( (pExpr->x.pSelect->selFlags & SF_All)==0 );
113872 assert( !ExprUseXSelect(pExpr) || pExpr->x.pSelect!=0 );
113873 if( ExprUseXSelect(pExpr) && (pExpr->x.pSelect->selFlags & SF_All)==0 ){
113876 pSig->selId = pExpr->x.pSelect->selId;
113891 pExpr->x.pSelect->selId));
113935 VdbeComment((v, "Result of SELECT %u", pExpr->x.pSelect->selId));
113948 Select *pSelect = pExpr->x.pSelect;
113949 ExprList *pEList = pSelect->pEList;
113952 addrOnce?"":"CORRELATED ", pSelect->selId
113964 pSelect->iLimit = 0;
113971 testcase( pSelect->selFlags & SF_Distinct );
113973 pCopy = sqlite3SelectDup(pParse->db, pSelect, 0);
114103 pSel = pExpr->x.pSelect;
114216 if( nVector!=pIn->x.pSelect->pEList->nExpr ){
114217 sqlite3SubselectError(pParse, pIn->x.pSelect->pEList->nExpr, nVector);
115574 && (nCol = pExpr->x.pSelect->pEList->nExpr)!=1
117172 static int selectRefEnter(Walker *pWalker, Select *pSelect){
117174 SrcList *pSrc = pSelect->pSrc;
117192 static void selectRefLeave(Walker *pWalker, Select *pSelect){
117194 SrcList *pSrc = pSelect->pSrc;
118594 static void renameWalkWith(Walker *pWalker, Select *pSelect){
118595 With *pWith = pSelect->pWith;
118601 if( (pWith->a[0].pSelect->selFlags & SF_Expanded)==0 ){
118611 Select *p = pWith->a[i].pSelect;
119113 if( pStep->pSelect ){
119114 sqlite3SelectPrep(pParse, pStep->pSelect, &sNC);
119152 sqlite3SelectPrep(pParse, p->u4.pSubq->pSelect, 0);
119208 sqlite3WalkSelect(pWalker, pStep->pSelect);
119224 sqlite3WalkSelect(pWalker, pFrom->a[i].u4.pSubq->pSelect);
119332 Select *pSelect = sParse.pNewTable->u.view.pSelect;
119333 pSelect->selFlags &= ~(u32)SF_View;
119335 sqlite3SelectPrep(&sParse, pSelect, 0);
119338 sqlite3WalkSelect(&sWalker, pSelect);
119457 static int renameTableSelectCb(Walker *pWalker, Select *pSelect){
119460 SrcList *pSrc = pSelect->pSrc;
119461 if( pSelect->selFlags & (SF_View|SF_CopyCte) ){
119462 testcase( pSelect->selFlags & SF_View );
119463 testcase( pSelect->selFlags & SF_CopyCte );
119476 renameWalkWith(pWalker, pSelect);
119545 Select *pSelect = pTab->u.view.pSelect;
119550 assert( pSelect->selFlags & SF_View );
119551 pSelect->selFlags &= ~(u32)SF_View;
119552 sqlite3SelectPrep(&sParse, pTab->u.view.pSelect, &sNC);
119556 sqlite3WalkSelect(&sWalker, pTab->u.view.pSelect);
119723 Select *pSelect = sParse.pNewTable->u.view.pSelect;
119724 pSelect->selFlags &= ~(u32)SF_View;
119726 sqlite3SelectPrep(&sParse, pSelect, 0);
119729 sqlite3WalkSelect(&sWalker, pSelect);
119832 sqlite3SelectPrep(&sParse, sParse.pNewTable->u.view.pSelect, &sNC);
122591 static int fixSelectCb(Walker *p, Select *pSelect){
122597 SrcList *pList = pSelect->pSrc;
122625 if( pSelect->pWith ){
122626 for(i=0; i<pSelect->pWith->nCte; i++){
122627 if( sqlite3WalkSelect(p, pSelect->pWith->a[i].pSelect) ){
122693 Select *pSelect /* The SELECT statement to be fixed to one database */
122695 return sqlite3WalkSelect(&pFix->w, pSelect);
122711 if( sqlite3WalkSelect(&pFix->w, pStep->pSelect)
123835 sqlite3SelectDelete(db, pTable->u.view.pSelect);
125629 Select *pSelect /* Select from a "CREATE ... AS SELECT" */
125636 if( pEnd==0 && pSelect==0 ){
125642 if( pSelect==0 && sqlite3ShadowTableName(db, p->zName) ){
125656 if( pSelect || (!IsOrdinaryTable(p) && db->init.newTnum) ){
125822 if( pSelect ){
125848 pSelTab = sqlite3ResultSetOfSelect(pParse, pSelect, SQLITE_AFF_BLOB);
125857 sqlite3Select(pParse, pSelect, &dest);
125873 if( pSelect ){
125962 if( !pSelect && IsOrdinaryTable(p) ){
125982 Select *pSelect, /* A SELECT statement that will become the new view */
126018 if( sqlite3FixSelect(&sFix, pSelect) ) goto create_view_fail;
126025 pSelect->selFlags |= SF_View;
126027 p->u.view.pSelect = pSelect;
126028 pSelect = 0;
126030 p->u.view.pSelect = sqlite3SelectDup(db, pSelect, EXPRDUP_REDUCE);
126056 sqlite3SelectDelete(db, pSelect);
126131 pSel = sqlite3SelectDup(db, pTable->u.view.pSelect, 0);
127920 assert( pItem->u4.pSubq->pSelect!=0 );
127921 assert( pItem->u4.pSubq->pSelect->pSrc!=0 );
127922 sqlite3SrcListAssignCursors(pParse, pItem->u4.pSubq->pSelect->pSrc);
127932 assert( pSubq!=0 && pSubq->pSelect!=0 );
127933 sqlite3SelectDelete(db, pSubq->pSelect);
127945 pSel = pItem->u4.pSubq->pSelect;
127967 pItem->u4.pSubq->pSelect!=0) );
128006 Select *pSelect, /* The subquery SELECT. Must be non-NULL */
128010 assert( pSelect!=0 );
128020 pSelect = sqlite3SelectDup(pParse->db, pSelect, 0);
128021 if( pSelect==0 ) return 0;
128025 sqlite3SelectDelete(pParse->db, pSelect);
128029 p->pSelect = pSelect;
128030 assert( offsetof(Subquery, pSelect)==0 );
128031 memset(((char*)p)+sizeof(p->pSelect), 0, sizeof(*p)-sizeof(p->pSelect));
128702 pNew->pSelect = pQuery;
128717 sqlite3SelectDelete(db, pCte->pSelect);
129541 Select *pSelect = NULL; /* Complete SELECT tree */
129615 pSelect = sqlite3SelectNew(pParse, pEList, pSelectSrc, pWhere, 0 ,0,
129621 sqlite3PExprAddSelect(pParse, pInClause, pSelect);
134020 sqlite3SelectDelete(dbMem, pStep->pSelect);
134568 Select *pSelect = 0; /* If RESTRICT, "SELECT RAISE(...)" */
134670 pSelect = sqlite3SelectNew(pParse,
134694 pStep->pSelect = sqlite3SelectDup(db, pSelect, EXPRDUP_REDUCE);
134707 sqlite3SelectDelete(db, pSelect);
135500 Select *pSelect = 0;
135509 pSelect = sqlite3SelectNew(pParse, pRow, 0, 0, 0, 0, 0, f, 0);
135511 if( pSelect ){
135512 pSelect->op = TK_ALL;
135513 pSelect->pPrior = pLeft;
135514 pLeft = pSelect;
135584 assert( pSubq->pSelect!=0 );
135585 assert( pSubq->pSelect->pEList!=0 );
135586 if( pSubq->pSelect->pEList->nExpr!=pRow->nExpr ){
135587 sqlite3SelectWrongNumTermsError(pParse, pSubq->pSelect);
135603 Select *pSelect, /* A SELECT statement to use as the data source */
135708 Select *pSelect, /* A SELECT statement to use as the data source */
135764 if( pSelect && (pSelect->selFlags & SF_Values)!=0 && pSelect->pPrior==0 ){
135765 pList = pSelect->pEList;
135766 pSelect->pEList = 0;
135767 sqlite3SelectDelete(db, pSelect);
135768 pSelect = 0;
135806 sqlite3TreeViewInsert(pParse->pWith, pTabList, pColumn, pSelect, pList,
135829 sqlite3BeginWriteOperation(pParse, pSelect || pTrigger, iDb);
135842 && pSelect!=0
135844 && xferOptimization(pParse, pTab, pSelect, onError, iDb)
135926 if( pSelect ){
135931 if( pSelect->pSrc->nSrc==1
135932 && pSelect->pSrc->a[0].fg.viaCoroutine
135933 && pSelect->pPrior==0
135935 SrcItem *pItem = &pSelect->pSrc->a[0];
135941 assert( pSubq->pSelect!=0 );
135942 assert( pSubq->pSelect->pEList!=0 );
135943 nColumn = pSubq->pSelect->pEList->nExpr;
135958 rc = sqlite3Select(pParse, pSelect, &dest);
135965 assert( pSelect->pEList );
135966 nColumn = pSelect->pEList->nExpr;
136145 }else if( pSelect ){
136236 }else if( pSelect ){
136271 assert( pSelect==0 ); /* Otherwise useTempTable is true */
136321 }else if( pSelect ){
136429 }else if( pSelect ){
136467 sqlite3SelectDelete(db, pSelect);
137826 Select *pSelect, /* A SELECT statement to use as the data source */
137846 assert( pSelect!=0 );
137847 if( pParse->pWith || pSelect->pWith ){
137862 assert(pSelect->pSrc); /* allocated even if there is no FROM clause */
137863 if( pSelect->pSrc->nSrc!=1 ){
137866 if( pSelect->pSrc->a[0].fg.isSubquery ){
137869 if( pSelect->pWhere ){
137872 if( pSelect->pOrderBy ){
137877 if( pSelect->pGroupBy ){
137880 if( pSelect->pLimit ){
137883 if( pSelect->pPrior ){
137886 if( pSelect->selFlags & SF_Distinct ){
137889 pEList = pSelect->pEList;
137903 pItem = pSelect->pSrc->a;
145202 assert( pItem->u4.pSubq->pSelect!=0 );
145203 pResults = pItem->u4.pSubq->pSelect->pEList;
145527 Select *pSelect, /* The query being coded */
145530 sqlite3ExprCodeExprList(pParse, pSelect->pEList, pInfo->regResult,
145549 Select *pSelect,
145557 innerLoopLoadRow(pParse, pSelect, pSort->pDeferredRowLoad);
145570 Select *pSelect, /* The whole SELECT statement */
145615 assert( pSelect->iOffset==0 || pSelect->iLimit!=0 );
145616 iLimit = pSelect->iOffset ? pSelect->iOffset+1 : pSelect->iLimit;
145634 regRecord = makeSorterRecord(pParse, pSort, pSelect, regBase, nBase);
145695 regRecord = makeSorterRecord(pParse, pSort, pSelect, regBase, nBase);
146807 pS = pTabList->a[j].u4.pSubq->pSelect;
146896 pS = pExpr->x.pSelect;
146991 Select *pSelect /* Generate column names for this SELECT statement */
147004 while( pSelect->pPrior ) pSelect = pSelect->pPrior;
147005 TREETRACE(0x80,pParse,pSelect,("generating column names\n"));
147006 pTabList = pSelect->pSrc;
147007 pEList = pSelect->pEList;
147197 Select *pSelect, /* SELECT used to determine types and collations */
147208 assert( pSelect!=0 );
147209 assert( (pSelect->selFlags & SF_Resolved)!=0 );
147210 assert( pTab->nCol==pSelect->pEList->nExpr || pParse->nErr>0 );
147213 while( pSelect->pPrior ) pSelect = pSelect->pPrior;
147214 a = pSelect->pEList->a;
147216 sNC.pSrcList = pSelect->pSrc;
147221 Select *pS2 = pSelect;
147234 if( pCol->affinity>=SQLITE_AFF_TEXT && (pS2->pNext || pS2!=pSelect) ){
147287 SQLITE_PRIVATE Table *sqlite3ResultSetOfSelect(Parse *pParse, Select *pSelect, char aff){
147295 sqlite3SelectPrep(pParse, pSelect, 0);
147298 while( pSelect->pPrior ) pSelect = pSelect->pPrior;
147306 sqlite3ColumnsFromExprList(pParse, pSelect->pEList, &pTab->nCol, &pTab->aCol);
147307 sqlite3SubqueryColumnTypes(pParse, pTab, pSelect, aff);
148820 substSelect(pSubst, pExpr->x.pSelect, 1);
148864 substSelect(pSubst, pItem->u4.pSubq->pSelect, 1);
148892 Select *pSelect, /* The complete SELECT statement */
148902 sqlite3WalkSelect(&w, pSelect);
148937 for(p=pItem->u4.pSubq->pSelect; p; p=p->pPrior){
149251 pSub = pSubitem->u4.pSubq->pSelect;
150243 pSub = pItem->u4.pSubq->pSelect;
150676 sqlite3SrcItemAttachSubquery(pParse, pFrom, pCte->pSelect, 1);
150679 pSel = pFrom->u4.pSubq->pSelect;
150813 pSel = pFrom->u4.pSubq->pSelect;
150942 pSel = pFrom->u4.pSubq->pSelect;
150983 sqlite3SrcItemAttachSubquery(pParse, pFrom, pTab->u.view.pSelect, 1);
151000 sqlite3WalkSelect(pWalker, pFrom->u4.pSubq->pSelect);
151102 assert( pFrom->u4.pSubq->pSelect!=0 );
151103 pNestedFrom = pFrom->u4.pSubq->pSelect->pEList;
151300 static void sqlite3SelectExpand(Parse *pParse, Select *pSelect){
151307 sqlite3WalkSelect(&w, pSelect);
151312 sqlite3WalkSelect(&w, pSelect);
151346 Select *pSel = pFrom->u4.pSubq->pSelect;
151361 static void sqlite3SelectAddTypeInfo(Parse *pParse, Select *pSelect){
151368 sqlite3WalkSelect(&w, pSelect);
151482 Select *pSelect, /* The SELECT statement being processed */
151487 assert( pSelect!=0 );
151488 assert( pSelect->pGroupBy!=0 );
151491 int mx = pSelect->pGroupBy->nExpr - 1;
151503 TREETRACE(0x20, pParse, pSelect,
151505 sqlite3TreeViewSelect(0, pSelect, 0);
151514 UNUSED_PARAMETER(pSelect);
151926 Select *pS = pWalker->u.pSelect;
151973 sWalker.u.pSelect = p;
151999 pSel = pThis->u4.pSubq->pSelect;
152012 pS1 = pItem->u4.pSubq->pSelect;
152080 pSub = pFrom->u4.pSubq->pSelect;
152150 && (p1->u4.pSubq->pSelect->selFlags & SF_NestedFrom)!=0
152151 && sameSrcAlias(p0, p1->u4.pSubq->pSelect->pSrc)
152402 Select *pSub = pItem->fg.isSubquery ? pItem->u4.pSubq->pSelect : 0;
152671 pSub = pSubq->pSelect;
152701 assert( pSubq->pSelect && (pSub->selFlags & SF_PushDown)!=0 );
152772 pSub->nSelectRow = pPriorSubq->pSelect->nSelectRow;
153106 pAggInfo->pSelect = p;
153889 sqlite3SelectDelete(db, pTmp->pSelect);
154302 Select *pSelect, /* The SELECT statement */
154308 sqlite3SelectDelete(db, pSelect);
154312 pTriggerStep->pSelect = pSelect;
154361 Select *pSelect, /* A SELECT statement that supplies values */
154370 assert(pSelect != 0 || db->mallocFailed);
154375 pTriggerStep->pSelect = pSelect;
154376 pSelect = 0;
154378 pTriggerStep->pSelect = sqlite3SelectDup(db, pSelect, EXPRDUP_REDUCE);
154392 sqlite3SelectDelete(db, pSelect);
154830 && (pExpr->x.pSelect->selFlags & SF_Correlated)!=0
154846 static int sqlite3ReturningSubqueryCorrelated(Walker *pWalker, Select *pSelect){
154849 assert( pSelect!=0 );
154850 pSrc = pSelect->pSrc;
154854 testcase( pSelect->selFlags & SF_Correlated );
154855 pSelect->selFlags |= SF_Correlated;
155033 sqlite3SelectDup(db, pStep->pSelect, 0),
155051 Select *pSelect = sqlite3SelectDup(db, pStep->pSelect, 0);
155053 sqlite3Select(pParse, pSelect, &sDest);
155054 sqlite3SelectDelete(db, pSelect);
155634 Select *pSelect = 0;
155700 pSelect = sqlite3SelectNew(pParse, pList,
155704 if( pSelect ) pSelect->selFlags |= SF_OrderByReqd;
155707 sqlite3Select(pParse, pSelect, &dest);
155708 sqlite3SelectDelete(db, pSelect);
159431 Select *pSelect; /* The entire SELECT statement containing WHERE */
160179 Select *pSelect; /* Pointer to the SELECT on the RHS */
160183 for(pSelect=pNew->x.pSelect; pSelect; pSelect=pSelect->pPrior){
160191 pOrigRhs = pSelect->pEList;
160194 if( pSelect==pNew->x.pSelect ){
160220 pSelect->pEList = pRhs;
160221 pSelect->selId = ++pParse->nSelect; /* Req'd for SubrtnSig validity */
160238 adjustOrderByCol(pSelect->pOrderBy, pRhs);
160239 adjustOrderByCol(pSelect->pGroupBy, pRhs);
160307 if( !ExprUseXSelect(pX) || pX->x.pSelect->pEList->nExpr==1 ){
161196 assert( pWInfo->pSelect!=0 );
161197 assert( pWInfo->pSelect->iOffset>0 );
161198 sqlite3VdbeAddOp2(v, OP_Integer, 0, pWInfo->pSelect->iOffset);
162322 && (pAlt->pExpr->x.pSelect->pEList->nExpr>1)
162472 assert( pSubq->pSelect!=0 && pSubq->pSelect->pEList!=0 );
162475 pSubq->regResult + pSubq->pSelect->pEList->nExpr-1
163533 mask |= exprSelectUsage(pMaskSet, pSrc->a[i].u4.pSubq->pSelect);
163681 pTerm->prereqRight = exprSelectUsage(pMaskSet, pExpr->x.pSelect);
164037 && (pExpr->x.pSelect->pPrior==0 || (pExpr->x.pSelect->selFlags & SF_Values))
164039 && pExpr->x.pSelect->pWin==0
164357 mask |= exprSelectUsage(pMaskSet, p->x.pSelect);
164803 inexpr.pRight = pX->x.pSelect->pEList->a[iField].pExpr;
167536 pRhs = pRhs->x.pSelect->pEList->a[i].pExpr;
168204 if( pWInfo->pSelect==0 ){
168228 sqlite3WalkSelect(&w, pWInfo->pSelect);
168541 pNew->u.btree.pOrderBy = pSrc->u4.pSubq->pSelect->pOrderBy;
168581 && (HasRowid(pTab) || pWInfo->pSelect!=0 || sqlite3FaultSim(700))
169892 assert( pWInfo->pSelect!=0 );
169893 assert( pWInfo->pSelect->pEList!=0 );
169895 nCol = sqlite3LogEst((pWInfo->pSelect->pEList->nExpr+59)/30);
170511 assert( pWInfo->pSelect->pOrderBy==0
170512 || pWInfo->nOBSat <= pWInfo->pSelect->pOrderBy->nExpr );
171035 || pItem->u4.pSubq->pSelect->pOrderBy==0
171136 Select *pSelect, /* The entire SELECT statement */
171219 pWInfo->pSelect = pSelect;
171253 if( ALWAYS(pWInfo->pSelect)
171254 && (pWInfo->pSelect->selFlags & SF_MultiValue)==0
171292 if( pSelect && pSelect->pLimit ){
171293 sqlite3WhereAddLimit(&pWInfo->sWC, pSelect);
172985 static int selectWindowRewriteSelectCb(Walker *pWalker, Select *pSelect){
172988 if( pSave==pSelect ){
172991 p->pSubSelect = pSelect;
172992 sqlite3WalkSelect(pWalker, pSelect);
173544 SQLITE_PRIVATE void sqlite3WindowCodeInit(Parse *pParse, Select *pSelect){
173550 assert( pSelect->pSrc->a[0].fg.isSubquery );
173551 nEphExpr = pSelect->pSrc->a[0].u4.pSubq->pSelect->pEList->nExpr;
173552 pMWin = pSelect->pWin;
175425 static Select *attachWithToSelect(Parse *pParse, Select *pSelect, With *pWith){
175426 if( pSelect ){
175427 pSelect->pWith = pWith;
175428 parserDoubleLinkSelect(pParse, pSelect);
175432 return pSelect;
179436 assert( pNew->u4.pSubq!=0 && pNew->u4.pSubq->pSelect!=0 );
179437 if( (pNew->u4.pSubq->pSelect->selFlags & SF_NestedFrom)!=0 ){
179956 sqlite3PExprAddSelect(pParse, yymsp[-4].minor.yy590, pRHS->x.pSelect);
179957 pRHS->x.pSelect = 0;
179995 Select *pSelect = sqlite3SelectNew(pParse, 0,pSrc,0,0,0,0,0,0);
179996 …if( yymsp[0].minor.yy402 ) sqlite3SrcListFuncArgs(pParse, pSelect ? pSrc : 0, yymsp[0].minor.yy40…
179998 sqlite3PExprAddSelect(pParse, yymsp[-4].minor.yy590, pSelect);
200491 static int langidFromSelect(Fts3Table *p, sqlite3_stmt *pSelect){
200493 if( p->zLanguageid ) iLangid = sqlite3_column_int(pSelect, p->nColumn+1);
200510 sqlite3_stmt *pSelect;
200514 rc = fts3SqlStmt(p, SQL_SELECT_CONTENT_BY_ROWID, &pSelect, &pRowid);
200516 if( SQLITE_ROW==sqlite3_step(pSelect) ){
200518 int iLangid = langidFromSelect(p, pSelect);
200519 i64 iDocid = sqlite3_column_int64(pSelect, 0);
200524 const char *zText = (const char *)sqlite3_column_text(pSelect, i);
200526 aSz[p->nColumn] += sqlite3_column_bytes(pSelect, i);
200530 sqlite3_reset(pSelect);
200536 rc = sqlite3_reset(pSelect);
200538 sqlite3_reset(pSelect);
203705 sqlite3_stmt *pSelect = 0; /* SELECT to read %_segdir entry */
203707 rc = fts3SqlStmt(p, SQL_SELECT_SEGDIR, &pSelect, 0);
203718 sqlite3_bind_int64(pSelect, 1, iAbsLevel+1);
203719 sqlite3_bind_int(pSelect, 2, iIdx);
203720 if( sqlite3_step(pSelect)==SQLITE_ROW ){
203721 iStart = sqlite3_column_int64(pSelect, 1);
203722 iLeafEnd = sqlite3_column_int64(pSelect, 2);
203723 fts3ReadEndBlockField(pSelect, 3, &iEnd, &pWriter->nLeafData);
203728 nRoot = sqlite3_column_bytes(pSelect, 4);
203729 aRoot = sqlite3_column_blob(pSelect, 4);
203731 sqlite3_reset(pSelect);
203735 return sqlite3_reset(pSelect);
203770 sqlite3_reset(pSelect);
203832 rc2 = sqlite3_reset(pSelect);
203991 sqlite3_stmt *pSelect = 0; /* Select statement to read idx values */
203994 rc = fts3SqlStmt(p, SQL_SELECT_INDEXES, &pSelect, 0);
203997 sqlite3_bind_int64(pSelect, 1, iAbsLevel);
203998 while( SQLITE_ROW==sqlite3_step(pSelect) ){
204009 aIdx[nIdx++] = sqlite3_column_int(pSelect, 0);
204011 rc2 = sqlite3_reset(pSelect);
204277 sqlite3_stmt *pSelect = 0;
204281 rc = fts3SqlStmt(p, SQL_SELECT_STAT, &pSelect, 0);
204284 sqlite3_bind_int(pSelect, 1, FTS_STAT_INCRMERGEHINT);
204285 if( SQLITE_ROW==sqlite3_step(pSelect) ){
204286 const char *aHint = sqlite3_column_blob(pSelect, 0);
204287 int nHint = sqlite3_column_bytes(pSelect, 0);
204296 rc2 = sqlite3_reset(pSelect);
206521 sqlite3_stmt *pSelect = 0;
206537 rc = fts3MatchinfoSelectDoctotal(pTab, &pSelect, &nDoc, 0, 0);
206548 rc = fts3MatchinfoSelectDoctotal(pTab, &pSelect, &nDoc, &a, &pEnd);
206610 rc = fts3MatchinfoSelectDoctotal(pTab, &pSelect, &pInfo->nDoc,0,0);
206625 sqlite3_reset(pSelect);
221561 sqlite3_stmt *pSelect; /* Source data */
222115 sqlite3_finalize(pIter->pSelect);
222129 pIter->pSelect = 0;
223621 if( pIter->pSelect==0 && rbuObjIterCacheTableInfo(p, pIter)==SQLITE_OK ){
223720 p->rc = prepareFreeAndCollectError(p->dbRbu,&pIter->pSelect,pz,zSql);
223845 p->rc = prepareFreeAndCollectError(p->dbRbu, &pIter->pSelect, pz,
224603 switch( sqlite3_column_type(p->objiter.pSelect, iCol) ){
224605 int iVal = sqlite3_column_int(p->objiter.pSelect, iCol);
224617 const unsigned char *z = sqlite3_column_text(p->objiter.pSelect, iCol);
224687 && sqlite3_column_type(pIter->pSelect, i)==SQLITE_NULL
224698 pVal = sqlite3_column_value(pIter->pSelect, i);
224714 assertColumnName(pIter->pSelect, pIter->nCol+1,
224717 pVal = sqlite3_column_value(pIter->pSelect, pIter->nCol+1);
224773 pVal = sqlite3_column_value(pIter->pSelect, i);
224782 assertColumnName(pIter->pSelect, pIter->nCol+1, "rbu_rowid");
224783 pVal = sqlite3_column_value(pIter->pSelect, pIter->nCol+1);
224997 int rc = sqlite3_step(pIter->pSelect);
225003 p->rc = sqlite3_reset(pIter->pSelect);
231078 sqlite3_stmt *pSelect, /* SELECT from sessionSelectStmt() */
231099 rc = sqlite3_bind_int64(pSelect, i+1, iVal);
231110 rc = sqlite3_bind_double(pSelect, i+1, rVal);
231120 rc = sqlite3_bind_text(pSelect, i+1, (char *)a, n, SQLITE_TRANSIENT);
231131 rc = sqlite3_bind_blob(pSelect, i+1, a, n, SQLITE_TRANSIENT);
232417 sqlite3_stmt *pSelect; /* SELECT statement */
232684 "main", zTab, p->bRowid, p->nCol, p->azCol, p->abPK, &p->pSelect
232846 sqlite3_stmt *pSelect = p->pSelect;
232852 sqlite3_clear_bindings(pSelect);
232856 nCol, p->abPK, pSelect
232865 sqlite3_bind_int(pSelect, ii+1+nCol, (pVal==0));
232866 if( pVal ) rc = sessionBindValue(pSelect, ii+1, pVal);
232872 rc = sqlite3_step(pSelect);
232873 if( rc!=SQLITE_ROW ) rc = sqlite3_reset(pSelect);
232993 && sqlite3_column_int(p->pSelect, sqlite3_column_count(p->pSelect)-1)
232997 pIter->pConflict = p->pSelect;
233001 rc = sqlite3_reset(p->pSelect);
233080 assert( p->pDelete && p->pInsert && p->pSelect );
233168 sqlite3_reset(p->pSelect);
233375 sqlite3_finalize(sApply.pSelect);
233379 sApply.pSelect = 0;
233513 sqlite3_finalize(sApply.pSelect);