diff --git a/src/query/src/qExecutor.c b/src/query/src/qExecutor.c index 581cea669d37e8eebe650bbb872f371c00be3a43..20fc6f58efbd9d42dabf20bde348885271166c2f 100644 --- a/src/query/src/qExecutor.c +++ b/src/query/src/qExecutor.c @@ -8968,14 +8968,10 @@ SQInfo* createQInfoImpl(SQueryTableMsg* pQueryMsg, SGroupbyExpr* pGroupbyExpr, S // calc skipOffset if(pQueryMsg->offset > 0 && TSDB_QUERY_HAS_TYPE(pQueryMsg->queryType, TSDB_QUERY_TYPE_PROJECTION_QUERY)) { - pQueryAttr->skipOffset = true; - for (int32_t i = 0; i < pQueryAttr->numOfCols; ++i) { - if (pQueryAttr->tableCols[i].flist.numOfFilters > 0 - && pQueryAttr->tableCols[i].colId != PRIMARYKEY_TIMESTAMP_COL_INDEX) { - pQueryAttr->skipOffset = false; - break; - } - } + if(pQueryAttr->stableQuery) + pQueryAttr->skipOffset = false; + else + pQueryAttr->skipOffset = pQueryAttr->pFilters == NULL; } if (pSecExprs != NULL) {