diff --git a/src/client/src/tscSQLParser.c b/src/client/src/tscSQLParser.c index 31448881d31a9cafa57590bb492e5f11a4ec0c1c..e9862dfdbf7b97d3714b11995da11b7fc7edd0db 100644 --- a/src/client/src/tscSQLParser.c +++ b/src/client/src/tscSQLParser.c @@ -8088,6 +8088,10 @@ static int32_t getTableNameFromSubquery(SSqlNode* pSqlNode, SArray* tableNameLis int32_t num = (int32_t)taosArrayGetSize(sub->pSubquery); for (int32_t i = 0; i < num; ++i) { SSqlNode* p = taosArrayGetP(sub->pSubquery, i); + if (p->from == NULL) { + return TSDB_CODE_TSC_INVALID_OPERATION; + } + if (p->from->type == SQL_NODE_FROM_TABLELIST) { int32_t code = getTableNameFromSqlNode(p, tableNameList, msgBuf, pSql); if (code != TSDB_CODE_SUCCESS) {