@Test public void testPower() { testExpression( rexBuilder.makeCall(SqlStdOperatorTable.POWER, inputRef("a"), integerLiteral(2)), DruidExpression.fromExpression("pow(\"a\",2)"), 100.0 ); }
rexBuilder.makeCall(truncateFunction, inputRef("x"), integerLiteral(1)), DruidExpression.fromExpression("(cast(cast(\"x\" * 10.0,'long'),'double') / 10.0)"), 2.2 rexBuilder.makeCall(truncateFunction, inputRef("z"), integerLiteral(1)), DruidExpression.fromExpression("(cast(cast(\"z\" * 10.0,'long'),'double') / 10.0)"), -2.2 rexBuilder.makeCall(truncateFunction, inputRef("b"), integerLiteral(-1)), DruidExpression.fromExpression("(cast(cast(\"b\" * 0.1,'long'),'double') / 0.1)"), 20.0 rexBuilder.makeCall(truncateFunction, inputRef("z"), integerLiteral(-1)), DruidExpression.fromExpression("(cast(cast(\"z\" * 0.1,'long'),'double') / 0.1)"), 0.0
@Test public void testRegexpExtract() { testExpression( rexBuilder.makeCall( new RegexpExtractOperatorConversion().calciteOperator(), inputRef("s"), rexBuilder.makeLiteral("f(.)"), integerLiteral(1) ), DruidExpression.of( SimpleExtraction.of("s", new RegexDimExtractionFn("f(.)", 1, true, null)), "regexp_extract(\"s\",'f(.)',1)" ), "o" ); testExpression( rexBuilder.makeCall( new RegexpExtractOperatorConversion().calciteOperator(), inputRef("s"), rexBuilder.makeLiteral("f(.)") ), DruidExpression.of( SimpleExtraction.of("s", new RegexDimExtractionFn("f(.)", 0, true, null)), "regexp_extract(\"s\",'f(.)')" ), "fo" ); }