[improvement] remove number condition (#375)

This commit is contained in:
mainmain
2023-11-13 19:52:18 +08:00
committed by GitHub
parent 5feac0c14e
commit 47be92d5f6
4 changed files with 12 additions and 6 deletions

View File

@@ -5,6 +5,7 @@ import com.tencent.supersonic.chat.api.pojo.SemanticSchema;
import com.tencent.supersonic.chat.api.pojo.request.QueryReq;
import com.tencent.supersonic.common.util.ContextUtils;
import com.tencent.supersonic.common.util.jsqlparser.SqlParserAddHelper;
import com.tencent.supersonic.common.util.jsqlparser.SqlParserRemoveHelper;
import com.tencent.supersonic.common.util.jsqlparser.SqlParserSelectFunctionHelper;
import com.tencent.supersonic.common.util.jsqlparser.SqlParserSelectHelper;
import com.tencent.supersonic.knowledge.service.SchemaService;
@@ -26,6 +27,11 @@ public class HavingCorrector extends BaseSemanticCorrector {
//add having expression filed to select
addHavingToSelect(semanticParseInfo);
//remove number condition
String correctorSql = semanticParseInfo.getSqlInfo().getCorrectS2SQL();
correctorSql = SqlParserRemoveHelper.removeNumberCondition(correctorSql);
semanticParseInfo.getSqlInfo().setCorrectS2SQL(correctorSql);
}
private void addHaving(SemanticParseInfo semanticParseInfo) {

View File

@@ -317,8 +317,8 @@ public class QueryServiceImpl implements QueryService {
correctorSql = SqlParserAddHelper.addWhere(correctorSql, addWhereConditions);
correctorSql = SqlParserAddHelper.addHaving(correctorSql, addHavingConditions);
log.info("correctorSql after replacing:{}", correctorSql);
correctorSql = SqlParserRemoveHelper.removeNumberCondition(correctorSql);
parseInfo.getSqlInfo().setCorrectS2SQL(correctorSql);
semanticQuery.setParseInfo(parseInfo);
String explainSql = semanticQuery.explain(user);