You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@pinot.apache.org by xi...@apache.org on 2020/01/26 11:15:22 UTC
[incubator-pinot] 01/01: Support arithmetic operators like '+', '-',
'*', '/'
This is an automated email from the ASF dual-hosted git repository.
xiangfu pushed a commit to branch support_arithmetic
in repository https://gitbox.apache.org/repos/asf/incubator-pinot.git
commit 82dd23d2f07ae20e4c61cfe89bda9c2492426a58
Author: Xiang Fu <fx...@gmail.com>
AuthorDate: Sun Jan 26 03:10:38 2020 -0800
Support arithmetic operators like '+','-','*','/'
---
.../core/operator/transform/function/TransformFunctionFactory.java | 5 +++++
.../pinot/integration/tests/BaseClusterIntegrationTestSet.java | 2 ++
2 files changed, 7 insertions(+)
diff --git a/pinot-core/src/main/java/org/apache/pinot/core/operator/transform/function/TransformFunctionFactory.java b/pinot-core/src/main/java/org/apache/pinot/core/operator/transform/function/TransformFunctionFactory.java
index 73ae8ad..5ebd662 100644
--- a/pinot-core/src/main/java/org/apache/pinot/core/operator/transform/function/TransformFunctionFactory.java
+++ b/pinot-core/src/main/java/org/apache/pinot/core/operator/transform/function/TransformFunctionFactory.java
@@ -23,6 +23,7 @@ import java.util.HashMap;
import java.util.List;
import java.util.Map;
import java.util.Set;
+import org.apache.calcite.sql.SqlKind;
import org.apache.pinot.common.request.transform.TransformExpressionTree;
import org.apache.pinot.core.common.DataSource;
import org.apache.pinot.core.operator.transform.function.SingleParamMathTransformFunction.AbsTransformFunction;
@@ -49,6 +50,10 @@ public class TransformFunctionFactory {
put(SubtractionTransformFunction.FUNCTION_NAME.toLowerCase(), SubtractionTransformFunction.class);
put(MultiplicationTransformFunction.FUNCTION_NAME.toLowerCase(), MultiplicationTransformFunction.class);
put(DivisionTransformFunction.FUNCTION_NAME.toLowerCase(), DivisionTransformFunction.class);
+ put(SqlKind.PLUS.name().toLowerCase(), AdditionTransformFunction.class);
+ put(SqlKind.MINUS.name().toLowerCase(), SubtractionTransformFunction.class);
+ put(SqlKind.TIMES.name().toLowerCase(), MultiplicationTransformFunction.class);
+ put(SqlKind.DIVIDE.name().toLowerCase(), DivisionTransformFunction.class);
put(AbsTransformFunction.FUNCTION_NAME.toLowerCase(), AbsTransformFunction.class);
put(CeilTransformFunction.FUNCTION_NAME.toLowerCase(), CeilTransformFunction.class);
put(ExpTransformFunction.FUNCTION_NAME.toLowerCase(), ExpTransformFunction.class);
diff --git a/pinot-integration-tests/src/test/java/org/apache/pinot/integration/tests/BaseClusterIntegrationTestSet.java b/pinot-integration-tests/src/test/java/org/apache/pinot/integration/tests/BaseClusterIntegrationTestSet.java
index 191d65a..8493dfb 100644
--- a/pinot-integration-tests/src/test/java/org/apache/pinot/integration/tests/BaseClusterIntegrationTestSet.java
+++ b/pinot-integration-tests/src/test/java/org/apache/pinot/integration/tests/BaseClusterIntegrationTestSet.java
@@ -172,6 +172,8 @@ public abstract class BaseClusterIntegrationTestSet extends BaseClusterIntegrati
testSqlQuery(query, Collections.singletonList(query));
query = "SELECT COUNT(*), MAX(ArrTime), MIN(ArrTime) FROM mytable WHERE DaysSinceEpoch >= 16312";
testSqlQuery(query, Collections.singletonList(query));
+ query = "SELECT ArrTime, ArrTime * 10 FROM mytable WHERE DaysSinceEpoch >= 16312";
+ testSqlQuery(query, Collections.singletonList(query));
}
/**
---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@pinot.apache.org
For additional commands, e-mail: commits-help@pinot.apache.org