Skip to content

Commit 7e211ab

Browse files
committed
change parser logic
Signed-off-by: xinyual <xinyual@amazon.com>
1 parent f17dc66 commit 7e211ab

2 files changed

Lines changed: 3 additions & 9 deletions

File tree

ppl/src/main/antlr/OpenSearchPPLParser.g4

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -388,8 +388,7 @@ statsAggTerm
388388
statsFunction
389389
: statsFunctionName LT_PRTHS valueExpression RT_PRTHS # statsFunctionCall
390390
| COUNT LT_PRTHS RT_PRTHS # countAllFunctionCall
391-
| (DISTINCT_COUNT | DC) LT_PRTHS valueExpression RT_PRTHS # distinctCountFunctionCall
392-
| DISTINCT_COUNT_APPROX LT_PRTHS valueExpression RT_PRTHS # distinctCountApproxFunctionCall
391+
| (DISTINCT_COUNT | DC | DISTINCT_COUNT_APPROX) LT_PRTHS valueExpression RT_PRTHS # distinctCountFunctionCall
393392
| takeAggFunction # takeAggFunctionCall
394393
| percentileApproxFunction # percentileApproxFunctionCall
395394
;

ppl/src/main/java/org/opensearch/sql/ppl/parser/AstExpressionBuilder.java

Lines changed: 2 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -200,13 +200,8 @@ public UnresolvedExpression visitCountAllFunctionCall(CountAllFunctionCallContex
200200

201201
@Override
202202
public UnresolvedExpression visitDistinctCountFunctionCall(DistinctCountFunctionCallContext ctx) {
203-
return new AggregateFunction("count", visit(ctx.valueExpression()), true);
204-
}
205-
206-
@Override
207-
public UnresolvedExpression visitDistinctCountApproxFunctionCall(
208-
OpenSearchPPLParser.DistinctCountApproxFunctionCallContext ctx) {
209-
return new AggregateFunction("distinct_count_approx", visit(ctx.valueExpression()), true);
203+
String funcName = ctx.DISTINCT_COUNT_APPROX()!=null ? "distinct_count_approx" :"count";
204+
return new AggregateFunction(funcName, visit(ctx.valueExpression()), true);
210205
}
211206

212207
@Override

0 commit comments

Comments
 (0)