From ebbbb3825d3004d81398cb43ab518123eaec4e0f Mon Sep 17 00:00:00 2001 From: slzhou Date: Tue, 21 Nov 2023 14:33:00 +0800 Subject: [PATCH] enhance: bi mode tbname col to tbname func --- source/libs/parser/src/parTranslater.c | 20 ++++++-------------- 1 file changed, 6 insertions(+), 14 deletions(-) diff --git a/source/libs/parser/src/parTranslater.c b/source/libs/parser/src/parTranslater.c index 61ac39ffd4..b868d39cfd 100644 --- a/source/libs/parser/src/parTranslater.c +++ b/source/libs/parser/src/parTranslater.c @@ -1093,17 +1093,7 @@ static EDealRes translateColumnUseAlias(STranslateContext* pCxt, SColumnNode** p #ifndef TD_ENTERPRISE EDealRes biRewriteToTbnameFuncAndTranslate(STranslateContext* pCxt, SColumnNode** ppCol) { - SFunctionNode* tbnameFuncNode = NULL; - // tbnameFuncNode = biMakeTbnameProjectAstNode(NULL, ((*ppCol)->tableAlias[0]!='\0') ? (*ppCol)->tableAlias : NULL); - tbnameFuncNode->node.resType = (*ppCol)->node.resType; - strcpy(tbnameFuncNode->node.aliasName, (*ppCol)->node.aliasName); - strcpy(tbnameFuncNode->node.userAlias, (*ppCol)->node.userAlias); - - nodesDestroyNode(*(SNode**)ppCol); - *(SNode**)ppCol = (SNode*)tbnameFuncNode; - - EDealRes res = translateFunction(pCxt, &tbnameFuncNode); - return res; + return DEAL_RES_CONTINUE; } #endif @@ -1118,11 +1108,13 @@ static EDealRes translateColumn(STranslateContext* pCxt, SColumnNode** pCol) { return DEAL_RES_CONTINUE; } - if (pCxt->pParseCxt->biMode && (strcasecmp((*pCol)->colName, "tbname") == 0) && + if (pCxt->pParseCxt->biMode) { + if ((strcasecmp((*pCol)->colName, "tbname") == 0) && ((SSelectStmt*)pCxt->pCurrStmt)->pFromTable && QUERY_NODE_REAL_TABLE == nodeType(((SSelectStmt*)pCxt->pCurrStmt)->pFromTable)) { - EDealRes res = biRewriteToTbnameFuncAndTranslate(pCxt, pCol); - return res; + EDealRes res = biRewriteToTbnameFuncAndTranslate(pCxt, pCol); + return res; + } } EDealRes res = DEAL_RES_CONTINUE;