Home | History | Annotate | Download | only in amalgamation

Lines Matching defs:pOrderBy

10384   ExprList *pOrderBy;    /* The ORDER BY clause */
69479 if( sqlite3WalkExprList(pWalker, p->pOrderBy) ) return WRC_Abort;
70271 ExprList *pOrderBy;
70276 pOrderBy = pSelect->pOrderBy;
70277 if( pOrderBy==0 ) return 0;
70280 if( pOrderBy->nExpr>db->aLimit[SQLITE_LIMIT_COLUMN] ){
70285 for(i=0; i<pOrderBy->nExpr; i++){
70286 pOrderBy->a[i].done = 0;
70298 for(i=0, pItem=pOrderBy->a; i<pOrderBy->nExpr; i++, pItem++){
70336 for(i=0; i<pOrderBy->nExpr; i++){
70337 if( pOrderBy->a[i].done==0 ){
70347 ** Check every term in the ORDER BY or GROUP BY clause pOrderBy of
70359 ExprList *pOrderBy, /* The ORDER BY or GROUP BY clause to be processed */
70367 if( pOrderBy==0 || pParse->db->mallocFailed ) return 0;
70369 if( pOrderBy->nExpr>db->aLimit[SQLITE_LIMIT_COLUMN] ){
70376 for(i=0, pItem=pOrderBy->a; i<pOrderBy->nExpr; i++, pItem++){
70389 ** pOrderBy is an ORDER BY or GROUP BY clause in SELECT statement pSelect.
70391 ** "ORDER" or "GROUP" depending on which type of clause pOrderBy is.
70408 Select *pSelect, /* The SELECT statement holding pOrderBy */
70409 ExprList *pOrderBy, /* An ORDER BY or GROUP BY clause to resolve */
70418 if( pOrderBy==0 ) return 0;
70421 for(i=0, pItem=pOrderBy->a; i<pOrderBy->nExpr; i++, pItem++){
70450 return sqlite3ResolveOrderGroupBy(pParse, pSelect, pOrderBy, zType);
70582 if( !isCompound && resolveOrderGroupBy(&sNC, p, p->pOrderBy, "ORDER") ){
71048 heightOfExprList(p->pOrderBy, pnHeight);
71686 pNew->pOrderBy = sqlite3ExprListDup(db, p->pOrderBy, flags);
81192 ExprList *pOrderBy, /* The ORDER BY clause. May be null */
81206 if( pOrderBy && (pLimit == 0) ) {
81245 pOrderBy,0,pLimit,pOffset);
81266 sqlite3ExprListDelete(pParse->db, pOrderBy);
86139 if( pSelect->pOrderBy ){
89950 sqlite3ExprListDelete(db, p->pOrderBy);
89979 ExprList *pOrderBy, /* the ORDER BY clause */
90001 pNew->pOrderBy = pOrderBy;
90336 ExprList *pOrderBy, /* The ORDER BY clause */
90341 int nExpr = pOrderBy->nExpr;
90345 sqlite3ExprCodeExprList(pParse, pOrderBy, regBase, 0);
90346 sqlite3VdbeAddOp2(v, OP_Sequence, pOrderBy->iECursor, regBase+nExpr);
90349 sqlite3VdbeAddOp2(v, OP_IdxInsert, pOrderBy->iECursor, regRecord);
90364 sqlite3VdbeAddOp1(v, OP_Last, pOrderBy->iECursor);
90365 sqlite3VdbeAddOp1(v, OP_Delete, pOrderBy->iECursor);
90454 ExprList *pOrderBy, /* If not NULL, sort results using this key */
90472 if( pOrderBy==0 && !hasDistinct ){
90512 if( pOrderBy==0 ){
90549 if( pOrderBy ){
90550 pushOntoSorter(pParse, pOrderBy, p, r1);
90570 if( pOrderBy ){
90575 pushOntoSorter(pParse, pOrderBy, p, regResult);
90600 if( pOrderBy ){
90601 pushOntoSorter(pParse, pOrderBy, p, regResult);
90618 if( pOrderBy ){
90621 pushOntoSorter(pParse, pOrderBy, p, r1);
90649 if( pOrderBy==0 && p->iLimit ){
90784 ** If the inner loop was generated using a non-null pOrderBy argument,
90801 ExprList *pOrderBy = p->pOrderBy;
90809 iTab = pOrderBy->iECursor;
90820 sqlite3VdbeAddOp3(v, OP_Column, iTab, pOrderBy->nExpr + 1, regRow);
91478 if( pPrior->pOrderBy ){
91516 if( p->pOrderBy ){
91586 assert( p->pOrderBy==0 );
91596 assert( !pPrior->pOrderBy );
91621 /* Query flattening in sqlite3Select() might refill p->pOrderBy.
91622 ** Be sure to delete p->pOrderBy, therefore, to avoid a memory leak. */
91623 sqlite3ExprListDelete(db, p->pOrderBy);
91626 p->pOrderBy = 0;
91674 assert( p->pOrderBy==0 );
92082 ExprList *pOrderBy; /* The ORDER BY clause */
92090 assert( p->pOrderBy!=0 );
92103 assert( pPrior->pOrderBy==0 );
92104 pOrderBy = p->pOrderBy;
92105 assert( pOrderBy );
92106 nOrderBy = pOrderBy->nExpr;
92115 for(j=0, pItem=pOrderBy->a; j<nOrderBy; j++, pItem++){
92124 pOrderBy = sqlite3ExprListAppend(pParse, pOrderBy, pNew);
92125 pOrderBy->a[nOrderBy++].iCol = (u16)i;
92140 for(i=0, pItem=pOrderBy->a; i<nOrderBy; i++, pItem++){
92152 Expr *pTerm = pOrderBy->a[i].pExpr;
92161 pKeyMerge->aSortOrder[i] = pOrderBy->a[i].sortOrder;
92170 p->pOrderBy = pOrderBy;
92171 pPrior->pOrderBy = sqlite3ExprListDup(pParse->db, pOrderBy, 0);
92200 sqlite3ResolveOrderGroupBy(pParse, p, p->pOrderBy, "ORDER");
92202 sqlite3ResolveOrderGroupBy(pParse, pPrior, pPrior->pOrderBy, "ORDER");
92469 substExprList(db, p->pOrderBy, iTable, pEList);
92647 if( p->pOrderBy && pSub->pOrderBy ){
92650 if( isAgg && pSub->pOrderBy ) return 0; /* Restriction (16) */
92698 if( pSub->pOrderBy ){
92716 if( p->pOrderBy ){
92718 for(ii=0; ii<p->pOrderBy->nExpr; ii++){
92719 if( p->pOrderBy->a[ii].iCol==0 ) return 0;
92766 ExprList *pOrderBy = p->pOrderBy;
92769 p->pOrderBy = 0;
92775 p->pOrderBy = pOrderBy;
92914 if( pSub->pOrderBy ){
92915 assert( pParent->pOrderBy==0 );
92916 pParent->pOrderBy = pSub->pOrderBy;
92917 pSub->pOrderBy = 0;
92918 }else if( pParent->pOrderBy ){
92919 substExprList(db, pParent->pOrderBy, iParent, pSub->pEList);
93639 ExprList *pOrderBy; /* The ORDER BY clause. May be NULL */
93667 sqlite3ExprListDelete(db, p->pOrderBy);
93668 p->pOrderBy = 0;
93672 pOrderBy = p->pOrderBy;
93737 pOrderBy = p->pOrderBy;
93789 if( sqlite3ExprListCompare(p->pGroupBy, pOrderBy)==0
93791 pOrderBy = 0;
93801 if( pOrderBy ){
93803 pKeyInfo = keyInfoFromExprList(pParse, pOrderBy);
93804 pOrderBy->iECursor = pParse->nTab++;
93807 pOrderBy->iECursor, pOrderBy->nExpr+2, 0,
93844 pWInfo = sqlite3WhereBegin(pParse, pTabList, pWhere, &pOrderBy, 0);
93852 if( addrSortIndex>=0 && pOrderBy==0 ){
93860 selectInnerLoop(pParse, p, pEList, 0, 0, pOrderBy, -1, pDest,
93911 sqlite3ExprAnalyzeAggList(&sNC, pOrderBy);
94115 pOrderBy,
94245 pOrderBy = 0;
94262 if( pOrderBy ){
94379 if( p->pOrderBy ){
94381 sqlite3PrintExprList(p->pOrderBy);
98125 mask |= exprListTableUsage(pMaskSet, pS->pOrderBy);
99060 ** pOrderBy is an ORDER BY clause from a SELECT statement. pTab is the
99079 ExprList *pOrderBy, /* The ORDER BY clause */
99090 assert( pOrderBy!=0 );
99091 nTerm = pOrderBy->nExpr;
99107 for(i=j=0, pTerm=pOrderBy->a; j<nTerm && i<=pIdx->nColumn; i++){
99169 if( iColumn<0 && !referencesOtherTables(pOrderBy, pMaskSet, j, base) ){
99188 && !referencesOtherTables(pOrderBy, pMaskSet, j, base) ){
99281 ExprList *pOrderBy, /* The ORDER BY clause */
99337 if( pOrderBy!=0 ){
99610 ExprList *pOrderBy
99639 if( pOrderBy ){
99640 for(i=0; i<pOrderBy->nExpr; i++){
99641 Expr *pExpr = pOrderBy->a[i].pExpr;
99644 if( i==pOrderBy->nExpr ){
99645 nOrderBy = pOrderBy->nExpr;
99697 Expr *pExpr = pOrderBy->a[i].pExpr;
99699 pIdxOrderBy[i].desc = pOrderBy->a[i].sortOrder;
99774 ExprList *pOrderBy, /* The order by clause */
99799 *ppIdxInfo = pIdxInfo = allocateIndexInfo(pParse, pWC, pSrc, pOrderBy);
99857 if( !pOrderBy ){
99877 if( pOrderBy && pIdxInfo->orderByConsumed==0 ){
99903 bestOrClauseIndex(pParse, pWC, pSrc, notReady, notValid, pOrderBy, pCost);
100345 ExprList *pOrderBy, /* The ORDER BY clause */
100550 if( pOrderBy ){
100553 && isSortingIndex(pParse, pWC->pMaskSet, pProbe, iCur, pOrderBy,
100775 if( !pOrderBy && pParse->db->flags & SQLITE_ReverseOrder ){
100779 assert( pOrderBy || (pCost->plan.wsFlags&WHERE_ORDERBY)==0 );
100791 bestOrClauseIndex(pParse, pWC, pSrc, notReady, notValid, pOrderBy, pCost);
100808 ExprList *pOrderBy, /* The ORDER BY clause */
100814 bestVirtualIndex(pParse, pWC, pSrc, notReady, notValid, pOrderBy, pCost,&p);
100822 bestBtreeIndex(pParse, pWC, pSrc, notReady, notValid, pOrderBy, pCost);
101507 /* If this loop satisfies a sort order (pOrderBy) request that
101519 /* assert( pOrderBy->nExpr==1 ); */
101520 /* assert( pOrderBy->a[0].pExpr->iColumn==pIdx->aiColumn[nEq] ); */
102234 ExprList *pOrderBy; /* ORDER BY clause for index to optimize */
102244 pOrderBy = ((i==0 && ppOrderBy )?*ppOrderBy:0);
102253 bestVirtualIndex(pParse, pWC, pTabItem, mask, notReady, pOrderBy,
102258 bestBtreeIndex(pParse, pWC, pTabItem, mask, notReady, pOrderBy,