Lines Matching refs:nKeyCol
18685 u16 nKeyCol; /* Number of columns forming the key */ member
98541 int nKeyCol;
98547 nKeyCol = pOp->p4.i;
98549 rc = sqlite3VdbeSorterCompare(pC, pIn3, nKeyCol, &res);
101972 for(j=0; j<pIdx->nKeyCol; j++){
104996 int nKeyCol, /* Compare this many columns */
105012 r2->nField = nKeyCol;
105014 assert( r2->nField==nKeyCol );
105018 for(i=0; i<nKeyCol; i++){
111494 if( pIdx->nKeyCol>nExpr
117655 for(i=0; i<pPk->nKeyCol; i++){
117658 nField = pPk->nKeyCol;
117667 if( iPos<pPk->nKeyCol ) continue;
117688 sqlite3VdbeAddOp4Int(v, OP_IdxInsert, iCur, regRec, reg+1, pPk->nKeyCol);
118006 int nKeyCol; /* Number of index columns w/o the pk/rowid */
118126 int nKeyCol; /* Number of key columns */
118140 nKeyCol = sqlite3_value_int(argv[1]);
118141 assert( nKeyCol<=nCol );
118142 assert( nKeyCol>0 );
118166 p->nKeyCol = nKeyCol;
118585 sqlite3StrAccumInit(&sStat, 0, 0, 0, (p->nKeyCol+1)*100);
118588 for(i=0; i<p->nKeyCol; i++){
118787 nCol = pIdx->nKeyCol;
118793 nColTest = pIdx->uniqNotNull ? pIdx->nKeyCol-1 : nCol-1;
118853 sqlite3VdbeAddOp2(v, OP_Integer, pIdx->nKeyCol, regRowid);
118900 if( nColTest==1 && pIdx->nKeyCol==1 && IsUniqueIndex(pIdx) ){
118953 regKey = sqlite3GetTempRange(pParse, pPk->nKeyCol);
118954 for(j=0; j<pPk->nKeyCol; j++){
118960 sqlite3VdbeAddOp3(v, OP_MakeRecord, regKey, pPk->nKeyCol, regRowid);
118961 sqlite3ReleaseTempRange(pParse, regKey, pPk->nKeyCol);
119016 nColX = pX->nKeyCol;
119335 int nCol = pIndex->nKeyCol+1;
119421 if( !pIdx->aiRowEst || iCol>=pIdx->nKeyCol || pIdx->aiRowEst[iCol+1]==0 ){
119523 assert( !HasRowid(pIdx->pTable) || pIdx->nColumn==pIdx->nKeyCol+1 );
119525 nIdxCol = pIdx->nKeyCol;
122235 assert( pIdx->nKeyCol==1 && pIdx->onError!=OE_None );
122578 assert( pIdx->nKeyCol==1 );
122813 memcpy(zExtra, pIdx->aiRowLogEst, sizeof(LogEst)*(pIdx->nKeyCol+1));
122884 assert( iCol<MAX(pPk->nColumn,pPk->nKeyCol) );
123019 assert( pPk->nKeyCol==1 );
123029 for(i=j=1; i<pPk->nKeyCol; i++){
123039 pPk->nKeyCol = j;
123044 nPk = pPk->nColumn = pPk->nKeyCol;
123065 if( !isDupColumn(pIdx, pIdx->nKeyCol, pPk, i) ){
123066 testcase( hasColumn(pIdx->aiColumn, pIdx->nKeyCol, pPk->aiColumn[i]) );
123072 pIdx->nColumn = pIdx->nKeyCol;
123075 if( resizeIndexObject(db, pIdx, pIdx->nKeyCol+n) ) return;
123076 for(i=0, j=pIdx->nKeyCol; i<nPk; i++){
123077 if( !isDupColumn(pIdx, pIdx->nKeyCol, pPk, i) ){
123078 testcase( hasColumn(pIdx->aiColumn, pIdx->nKeyCol, pPk->aiColumn[i]) );
123088 assert( pIdx->nColumn>=pIdx->nKeyCol+n );
124407 sqlite3VdbeAddOp4(v, OP_SorterOpen, iSorter, 0, pIndex->nKeyCol, (char*)
124433 pIndex->nKeyCol); VdbeCoverage(v);
124498 p->nKeyCol = nCol - 1;
124764 nExtraCol = pPk ? pPk->nKeyCol : 1;
124781 pIndex->nKeyCol = pList->nExpr;
124811 for(i=0; i<pIndex->nKeyCol; i++, pListItem++){
124878 for(j=0; j<pPk->nKeyCol; j++){
124881 if( isDupColumn(pIndex, pIndex->nKeyCol, pPk, j) ){
124884 testcase( hasColumn(pIndex->aiColumn,pIndex->nKeyCol,x) );
124943 if( pIdx->nKeyCol!=pIndex->nKeyCol ) continue;
124944 for(k=0; k<pIdx->nKeyCol; k++){
124953 if( k==pIdx->nKeyCol ){
125155 int nCopy = MIN(ArraySize(aVal), pIdx->nKeyCol);
125182 for(i=nCopy+1; i<=pIdx->nKeyCol; i++){
125187 if( IsUniqueIndex(pIdx) ) a[pIdx->nKeyCol] = 0;
125988 for(j=0; j<pIdx->nKeyCol; j++){
126169 int nKey = pIdx->nKeyCol;
127096 assert( pPk->nKeyCol>=1 );
127097 if( pPk->nKeyCol==1 ){
127105 for(i=0; i<pPk->nKeyCol; i++){
127374 nPk = pPk->nKeyCol;
127790 pIdx->uniqNotNull ? pIdx->nKeyCol : pIdx->nColumn);
127856 nCol = (prefixOnly && pIdx->uniqNotNull) ? pIdx->nKeyCol : pIdx->nColumn;
130885 if( pIdx->nKeyCol==nCol && IsUniqueIndex(pIdx) && pIdx->pPartIdxWhere==0 ){
131221 assert( pIdx==0 || pIdx->nKeyCol==pFKey->nCol );
131280 for(i=0; i<pIdx->nKeyCol; i++){
131763 for(i=0; i<pIdx->nKeyCol; i++){
133867 nPkField = pPk->nKeyCol;
134430 regIdx, pIdx->nKeyCol); VdbeCoverage(v);
134449 for(i=0; i<pPk->nKeyCol; i++){
134465 int addrJump = sqlite3VdbeCurrentAddr(v)+pPk->nKeyCol;
134469 for(i=0; i<pPk->nKeyCol; i++){
134473 if( i==(pPk->nKeyCol-1) ){
134741 pIdx->uniqNotNull ? pIdx->nKeyCol: pIdx->nColumn);
134870 if( pDest->nKeyCol!=pSrc->nKeyCol || pDest->nColumn!=pSrc->nColumn ){
134876 for(i=0; i<pSrc->nKeyCol; i++){
139113 mx = pIdx->nKeyCol;
139127 i<pIdx->nKeyCol);
139558 r2 = sqlite3GetTempRange(pParse, pPk->nKeyCol);
139559 sqlite3VdbeAddOp3(v, OP_Null, 1, r2, r2+pPk->nKeyCol-1);
139603 a1 = sqlite3VdbeAddOp4Int(v, OP_IdxGT, iDataCur, 0,r2,pPk->nKeyCol);
139613 for(j=0; j<pPk->nKeyCol; j++){
139816 for(kk=0; kk<pIdx->nKeyCol; kk++){
139838 for(kk=0; kk<pIdx->nKeyCol; kk++){
139849 pIdx->nKeyCol); VdbeCoverage(v);
139873 sqlite3ReleaseTempRange(pParse, r2, pPk->nKeyCol);
142852 nKey = pPk->nKeyCol;
143548 assert( sqlite3PrimaryKeyIndex(pTab)->nKeyCol==nKey );
152286 for(i=0; i<pPk->nKeyCol; i++){
152324 dest.iSDParm2 = (pPk ? pPk->nKeyCol : -1);
152635 for(i=0; i<pIdx->nKeyCol; i++){
152735 nPk = pPk ? pPk->nKeyCol : 0;
153299 assert( pPk->nKeyCol==1 );
153356 assert( pPk->nKeyCol==1 );
153575 if( pTarget->nExpr!=pIdx->nKeyCol ) continue;
153583 nn = pIdx->nKeyCol;
153703 int nPk = pPk->nKeyCol;
155015 && sqlite3PrimaryKeyIndex(pNew)->nKeyCol!=1
158213 iRowidReg = sqlite3GetTempRange(pParse, pPk->nKeyCol);
158214 for(j=0; j<pPk->nKeyCol; j++){
158219 iRowidReg, pPk->nKeyCol); VdbeCoverage(v);
158368 sqlite3VdbeAddOp2(v, OP_OpenEphemeral, regRowset, pPk->nKeyCol);
158480 int nPk = pPk->nKeyCol;
158778 nPk = pPk->nKeyCol;
158925 nPk = pPk->nKeyCol;
159935 for(i=0; i<pIdx->nKeyCol; i++){
161452 for(i=0; i<pIdx->nKeyCol; i++){
161458 if( i==pIdx->nKeyCol ){
161707 int nKeyCol; /* Number of columns in the constructed index */
161744 nKeyCol = 0;
161777 if( whereLoopResize(pParse->db, pLoop, nKeyCol+1) ){
161780 pLoop->aLTerm[nKeyCol++] = pTerm;
161785 assert( nKeyCol>0 || pParse->db->mallocFailed );
161786 pLoop->u.btree.nEq = pLoop->nLTerm = nKeyCol;
161807 if( extraCols & MASKBIT(i) ) nKeyCol++;
161810 nKeyCol += pTable->nCol - BMS + 1;
161814 pIdx = sqlite3AllocateIndexObject(pParse->db, nKeyCol+1, 0, &zNotUsed);
161869 assert( n==nKeyCol );
161877 sqlite3VdbeAddOp2(v, OP_OpenAutoindex, pLevel->iIdxCur, nKeyCol+1);
162424 nField = pIdx->nKeyCol;
163802 assert( pNew->u.btree.nEq<pProbe->nKeyCol
163842 if( IsUniqueIndex(pProbe) && saved_nEq==pProbe->nKeyCol-1 ){
163936 || (iCol>=0 && nInMul==0 && saved_nEq==pProbe->nKeyCol-1)
163939 || (pProbe->nKeyCol==1 && pProbe->onError && eOp==WO_EQ)
164099 && (pNew->u.btree.nEq<pProbe->nKeyCol ||
164133 && saved_nEq+1<pProbe->nKeyCol
164187 for(jj=0; jj<pIndex->nKeyCol; jj++){
164191 for(jj=0; jj<pIndex->nKeyCol; jj++){
164549 sPk.nKeyCol = 1;
165525 u16 nKeyCol; /* Number of key columns in pIndex */
165638 nKeyCol = 0;
165643 nKeyCol = pIndex->nKeyCol;
165645 assert( nColumn==nKeyCol+1 || !HasRowid(pIndex->pTable) );
165794 if( j==0 || j<nKeyCol ){
166394 || pIdx->nKeyCol>ArraySize(pLoop->aLTermSpace)
166397 for(j=0; j<pIdx->nKeyCol; j++){
166404 if( j!=pIdx->nKeyCol ) continue;
167404 sqlite3VdbeAddOp2(v, OP_OpenEphemeral, pRJ->iMatch, pPk->nKeyCol);