From c68df243753ef31cd28f2bd0f5b88d2f84952c56 Mon Sep 17 00:00:00 2001 From: lexluo09 <39718951+lexluo09@users.noreply.github.com> Date: Tue, 19 Dec 2023 14:29:18 +0800 Subject: [PATCH] [improvement](chat) Fix get metrics error in queryReqConverter (#547) --- .../common/util/jsqlparser/SqlParserSelectHelper.java | 1 + .../common/util/jsqlparser/SqlParserSelectHelperTest.java | 5 +++++ 2 files changed, 6 insertions(+) diff --git a/common/src/main/java/com/tencent/supersonic/common/util/jsqlparser/SqlParserSelectHelper.java b/common/src/main/java/com/tencent/supersonic/common/util/jsqlparser/SqlParserSelectHelper.java index 04381721d..ddbae1d60 100644 --- a/common/src/main/java/com/tencent/supersonic/common/util/jsqlparser/SqlParserSelectHelper.java +++ b/common/src/main/java/com/tencent/supersonic/common/util/jsqlparser/SqlParserSelectHelper.java @@ -289,6 +289,7 @@ public class SqlParserSelectHelper { Set orderByFieldExpressions = getOrderByFields(plainSelect); Set collect = orderByFieldExpressions.stream() .map(fieldExpression -> fieldExpression.getFieldName()) + .filter(Objects::nonNull) .collect(Collectors.toSet()); result.addAll(collect); } diff --git a/common/src/test/java/com/tencent/supersonic/common/util/jsqlparser/SqlParserSelectHelperTest.java b/common/src/test/java/com/tencent/supersonic/common/util/jsqlparser/SqlParserSelectHelperTest.java index 40078be2d..ce6f44b30 100644 --- a/common/src/test/java/com/tencent/supersonic/common/util/jsqlparser/SqlParserSelectHelperTest.java +++ b/common/src/test/java/com/tencent/supersonic/common/util/jsqlparser/SqlParserSelectHelperTest.java @@ -170,6 +170,11 @@ class SqlParserSelectHelperTest { + "WHERE MONTH(数据日期) = 9) FROM 营销 WHERE 国家中文名 = '中国' AND MONTH(数据日期) = 9"); Assert.assertEquals(allFields.size(), 3); + + allFields = SqlParserSelectHelper.getAllFields( + "SELECT 用户, 页面 FROM 超音数用户部门 GROUP BY 用户, 页面 ORDER BY count(*) DESC"); + + Assert.assertEquals(allFields.size(), 2); } @Test