aboutsummaryrefslogtreecommitdiff
path: root/common
diff options
context:
space:
mode:
authorMehant Baid <mehantr@gmail.com>2014-07-03 14:35:13 -0700
committerJacques Nadeau <jacques@apache.org>2014-07-07 14:50:31 -0700
commite987e06c7e9de907a689e658768d38b4f2dc5bd7 (patch)
tree7b9497e7fc2bb0d195cb9727c9ecd78aeaf0324d /common
parentcd4f7267de975f89aef775860532d49220ee8e88 (diff)
DRILL-861: Implement sum, avg for decimal data type.
Diffstat (limited to 'common')
-rw-r--r--common/src/main/java/org/apache/drill/common/util/DecimalUtility.java10
1 files changed, 10 insertions, 0 deletions
diff --git a/common/src/main/java/org/apache/drill/common/util/DecimalUtility.java b/common/src/main/java/org/apache/drill/common/util/DecimalUtility.java
index 4f9f09601..465cf8219 100644
--- a/common/src/main/java/org/apache/drill/common/util/DecimalUtility.java
+++ b/common/src/main/java/org/apache/drill/common/util/DecimalUtility.java
@@ -23,6 +23,7 @@ import org.apache.drill.common.types.TypeProtos;
import java.math.BigDecimal;
import java.math.BigInteger;
+import java.math.RoundingMode;
import java.util.Arrays;
public class DecimalUtility {
@@ -341,6 +342,15 @@ public class DecimalUtility {
return (input.unscaledValue().longValue());
}
+ public static BigDecimal getBigDecimalFromPrimitiveTypes(int input, int scale, int precision) {
+ return BigDecimal.valueOf(input, scale);
+ }
+
+ public static BigDecimal getBigDecimalFromPrimitiveTypes(long input, int scale, int precision) {
+ return BigDecimal.valueOf(input, scale);
+ }
+
+
public static int compareDenseBytes(ByteBuf left, int leftStart, boolean leftSign, ByteBuf right, int rightStart, boolean rightSign, int width) {
int invert = 1;