Lines Matching defs:nEq

1851   pLevel->plan.nEq = nColumn;
1903 assert( (u32)n==pLevel->plan.nEq );
2243 pCost->plan.nEq = 0;
2416 ** The nEq parameter is passed the index of the index column subject to the
2423 ** then nEq should be passed the value 1 (as the range restricted column,
2428 ** then nEq should be passed 0.
2432 ** approximately 1/100th (1%) of the rows selected by the nEq equality
2445 int nEq, /* index into p->aCol[] of the range-compared column */
2454 if( nEq==0 && p->aSample ){
2511 UNUSED_PARAMETER(nEq);
2767 ** nEq:
2827 int nEq; /* Number of == or IN terms matching index */
2839 /* Determine the values of nEq and nInMul */
2840 for(nEq=0; nEq<pProbe->nColumn; nEq++){
2841 int j = pProbe->aiColumn[nEq];
2860 if( nEq==0 && pProbe->aSample ) pFirstTerm = pTerm;
2866 if( nEq<pProbe->nColumn && pProbe->bUnordered==0 ){
2867 int j = pProbe->aiColumn[nEq];
2871 whereRangeScanEst(pParse, pProbe, nEq, pBtm, pTop, &estBound);
2900 nEq, wsFlags, &rev)
2934 nRow = (double)(aiRowEst[nEq] * nInMul);
2937 nInMul = (int)(nRow / aiRowEst[nEq]);
2946 if( nRow>(double)1 && nEq==1 && pFirstTerm!=0 ){
3044 int nSkipEq = nEq; /* Number of == constraints to skip */
3054 /* Ignore the first nEq equality matches since the index
3086 "%s(%s): nEq=%d nInMul=%d estBound=%d bSort=%d bLookup=%d wsFlags=0x%x\n"
3089 nEq, nInMul, estBound, bSort, bLookup, wsFlags,
3103 pCost->plan.nEq = nEq;
3330 ** In the example above nEq==2. But this subroutine works for any value
3331 ** of nEq including 0. If nEq==0, this routine is nearly a no-op.
3339 ** this routine allocates an additional nEq memory cells for internal
3365 int nEq = pLevel->plan.nEq; /* The number of == or IN constraints to code */
3382 nReg = pLevel->plan.nEq + nExtraReg;
3392 assert( pIdx->nColumn>=nEq );
3393 for(j=0; j<nEq; j++){
3473 int nEq = pPlan->nEq;
3479 if( nEq==0 && (pPlan->wsFlags & (WHERE_BTM_LIMIT|WHERE_TOP_LIMIT))==0 ){
3485 for(i=0; i<nEq; i++){
3526 isSearch = (pLevel->plan.nEq>0)
3832 int nEq = pLevel->plan.nEq; /* Number of == or IN terms */
3851 k = pIdx->aiColumn[nEq]; /* Column for inequality constraints */
3858 ** the first one after the nEq equality constraints in the index,
3863 && (pIdx->nColumn>nEq)
3866 /* assert( pOrderBy->a[0].pExpr->iColumn==pIdx->aiColumn[nEq] ); */
3897 if( nEq<pIdx->nColumn && bRev==(pIdx->aSortOrder[nEq]==SQLITE_SO_ASC) ){
3907 start_constraints = pRangeStart || nEq>0;
3910 nConstraint = nEq;
3913 sqlite3ExprCode(pParse, pRight, regBase+nEq);
3915 sqlite3ExprCodeIsNullJump(v, pRight, regBase+nEq, addrNxt);
3918 if( sqlite3CompareAffinity(pRight, zStartAff[nEq])==SQLITE_AFF_NONE){
3922 zStartAff[nEq] = SQLITE_AFF_NONE;
3924 if( sqlite3ExprNeedsNoAffinityChange(pRight, zStartAff[nEq]) ){
3925 zStartAff[nEq] = SQLITE_AFF_NONE;
3931 sqlite3VdbeAddOp2(v, OP_Null, 0, regBase+nEq);
3950 nConstraint = nEq;
3953 sqlite3ExprCacheRemove(pParse, regBase+nEq, 1);
3954 sqlite3ExprCode(pParse, pRight, regBase+nEq);
3956 sqlite3ExprCodeIsNullJump(v, pRight, regBase+nEq, addrNxt);
3959 if( sqlite3CompareAffinity(pRight, zEndAff[nEq])==SQLITE_AFF_NONE){
3963 zEndAff[nEq] = SQLITE_AFF_NONE;
3965 if( sqlite3ExprNeedsNoAffinityChange(pRight, zEndAff[nEq]) ){
3966 zEndAff[nEq] = SQLITE_AFF_NONE;
3969 codeApplyAffinity(pParse, regBase, nEq+1, zEndAff);
3980 op = aEndOp[(pRangeEnd || nEq) * (1 + bRev)];
3997 sqlite3VdbeAddOp3(v, OP_Column, iIdxCur, nEq, r1);
4504 ** pWInfo->a[].nEq The number of == and IN constraints