diff --git a/be/src/vec/functions/date_time_transforms.h b/be/src/vec/functions/date_time_transforms.h index d07d258dd30690..05c9d498abe626 100644 --- a/be/src/vec/functions/date_time_transforms.h +++ b/be/src/vec/functions/date_time_transforms.h @@ -126,6 +126,10 @@ struct TimeStampImpl { static constexpr auto name = "timestamp"; static inline auto execute(const OpArgType& t) { return t; } + + static DataTypes get_variadic_argument_types() { + return {std::make_shared::DateType>()}; + } }; template diff --git a/be/src/vec/functions/to_time_function.cpp b/be/src/vec/functions/to_time_function.cpp index 5fce870e23ff75..f718f68b0f6184 100644 --- a/be/src/vec/functions/to_time_function.cpp +++ b/be/src/vec/functions/to_time_function.cpp @@ -66,6 +66,8 @@ using FunctionDateTimeV2ToDate = using FunctionDateTimeV2Date = FunctionDateOrDateTimeToSomething>; using FunctionTimeStamp = FunctionDateOrDateTimeToSomething>; +using FunctionTimeStampV2 = + FunctionDateOrDateTimeToSomething>; void register_function_to_time_function(SimpleFunctionFactory& factory) { factory.register_function(); @@ -80,6 +82,7 @@ void register_function_to_time_function(SimpleFunctionFactory& factory) { factory.register_function(); factory.register_function(); factory.register_function(); + factory.register_function(); factory.register_function(); factory.register_function(); factory.register_function(); diff --git a/fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/scalar/CryptoFunction.java b/fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/scalar/CryptoFunction.java index 22ad0ac92c9235..58dc04851af804 100644 --- a/fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/scalar/CryptoFunction.java +++ b/fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/scalar/CryptoFunction.java @@ -21,6 +21,7 @@ import org.apache.doris.nereids.trees.expressions.Expression; import org.apache.doris.nereids.trees.expressions.functions.AlwaysNullable; import org.apache.doris.nereids.trees.expressions.functions.ExplicitlyCastableSignature; +import org.apache.doris.nereids.trees.expressions.literal.StringLikeLiteral; import org.apache.doris.nereids.trees.expressions.literal.StringLiteral; import org.apache.doris.qe.ConnectContext; @@ -70,10 +71,10 @@ public String toString() { /** checkBlockEncryptionMode */ static void checkBlockEncryptionMode(Expression blockEncryptionMode, Set modes, String name) { - if (!(blockEncryptionMode instanceof StringLiteral)) { + if (!(blockEncryptionMode instanceof StringLikeLiteral)) { throw new AnalysisException("blockEncryptionMode should be string literal: " + blockEncryptionMode); } - String mode = ((StringLiteral) blockEncryptionMode).getValue(); + String mode = ((StringLikeLiteral) blockEncryptionMode).getStringValue(); if (!modes.contains(mode.toUpperCase())) { throw new AnalysisException("session variable block_encryption_mode is invalid with " + name); } diff --git a/fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/scalar/Sm4Decrypt.java b/fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/scalar/Sm4Decrypt.java index a76474e7683606..931cdee9e7d58e 100644 --- a/fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/scalar/Sm4Decrypt.java +++ b/fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/scalar/Sm4Decrypt.java @@ -73,7 +73,7 @@ public Sm4Decrypt(Expression arg0, Expression arg1, Expression arg2) { super("sm4_decrypt", arg0, arg1, arg2, getDefaultBlockEncryptionMode()); } - private Sm4Decrypt(Expression arg0, Expression arg1, Expression arg2, StringLiteral arg3) { + public Sm4Decrypt(Expression arg0, Expression arg1, Expression arg2, Expression arg3) { super("sm4_decrypt", arg0, arg1, arg2, arg3); } diff --git a/fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/scalar/Sm4Encrypt.java b/fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/scalar/Sm4Encrypt.java index 25fb60c6827265..f14593c0284f43 100644 --- a/fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/scalar/Sm4Encrypt.java +++ b/fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/scalar/Sm4Encrypt.java @@ -68,7 +68,7 @@ public Sm4Encrypt(Expression arg0, Expression arg1, Expression arg2) { super("sm4_encrypt", arg0, arg1, arg2, getDefaultBlockEncryptionMode()); } - private Sm4Encrypt(Expression arg0, Expression arg1, Expression arg2, StringLiteral arg3) { + public Sm4Encrypt(Expression arg0, Expression arg1, Expression arg2, Expression arg3) { super("sm4_encrypt", arg0, arg1, arg2, arg3); } diff --git a/fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/scalar/ToBitmapWithCheck.java b/fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/scalar/ToBitmapWithCheck.java index a0d85a1043e31f..10f2dfb6c29e48 100644 --- a/fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/scalar/ToBitmapWithCheck.java +++ b/fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/scalar/ToBitmapWithCheck.java @@ -23,9 +23,8 @@ import org.apache.doris.nereids.trees.expressions.functions.ExplicitlyCastableSignature; import org.apache.doris.nereids.trees.expressions.shape.UnaryExpression; import org.apache.doris.nereids.trees.expressions.visitor.ExpressionVisitor; +import org.apache.doris.nereids.types.BigIntType; import org.apache.doris.nereids.types.BitmapType; -import org.apache.doris.nereids.types.StringType; -import org.apache.doris.nereids.types.VarcharType; import com.google.common.base.Preconditions; import com.google.common.collect.ImmutableList; @@ -39,8 +38,7 @@ public class ToBitmapWithCheck extends ScalarFunction implements UnaryExpression, ExplicitlyCastableSignature, AlwaysNotNullable { public static final List SIGNATURES = ImmutableList.of( - FunctionSignature.ret(BitmapType.INSTANCE).args(VarcharType.SYSTEM_DEFAULT), - FunctionSignature.ret(BitmapType.INSTANCE).args(StringType.INSTANCE) + FunctionSignature.ret(BitmapType.INSTANCE).args(BigIntType.INSTANCE) ); /** diff --git a/regression-test/data/nereids_function_p0/fn_test.dat b/regression-test/data/nereids_function_p0/fn_test.dat index 6f98c3a87cae4b..d7b32c3de7888b 100644 --- a/regression-test/data/nereids_function_p0/fn_test.dat +++ b/regression-test/data/nereids_function_p0/fn_test.dat @@ -1,13 +1,13 @@ -0;1;1;1;1;1;0.1;0.1;0.1;0.1;0.1;0.1;0.1;0.1;char11;char21;char31;varchar11;varchar21;varchar31;string1;2012-03-01;2012-03-01;2012-03-01 01:00:01;2012-03-01 01:00:01;2012-03-01 01:00:01;2012-03-01 01:00:01;[0];[0];[1];[1];[1];[1];[1];[0.1];[2012-03-01,2012-03-01];[2012-03-01 01:00:01];[2012-03-01,2012-03-01];[2012-03-01 01:00:01,2012-03-01 01:00:01,2012-03-01 01:00:01,2012-03-01 01:00:01];[char11,char21,char31];[char11,char21,char31,varchar11,varchar21,varchar31];[char21,char31,varchar11,varchar21,varchar31,string1];[0.1,0.1] -0;2;2;2;2;2;0.2;0.2;0.2;0.2;0.2;0.2;0.2;0.2;char12;char22;char32;varchar12;varchar22;varchar32;string2;2012-03-02;2012-03-02;2012-03-02 02:01:02;2012-03-02 02:01:02;2012-03-02 02:01:02;2012-03-02 02:01:02;[0];[0];[2];[2];[2];[2];[2];[0.2];[2012-03-02,2012-03-02];[2012-03-02 02:01:02];[2012-03-02,2012-03-02];[2012-03-02 02:01:02,2012-03-02 02:01:02,2012-03-02 02:01:02,2012-03-02 02:01:02];[char12,char22,char32];[char12,char22,char32,varchar12,varchar22,varchar32];[char22,char32,varchar12,varchar22,varchar32,string2];[0.2,0.2] -0;3;3;3;3;3;0.3;0.3;0.3;0.3;0.3;0.3;0.3;0.3;char13;char23;char33;varchar13;varchar23;varchar33;string3;2012-03-03;2012-03-03;2012-03-03 03:02:03;2012-03-03 03:02:03;2012-03-03 03:02:03;2012-03-03 03:02:03;[0];[0];[3];[3];[3];[3];[3];[0.3];[2012-03-03,2012-03-03];[2012-03-03 03:02:03];[2012-03-03,2012-03-03];[2012-03-03 03:02:03,2012-03-03 03:02:03,2012-03-03 03:02:03,2012-03-03 03:02:03];[char13,char23,char33];[char13,char23,char33,varchar13,varchar23,varchar33];[char23,char33,varchar13,varchar23,varchar33,string3];[0.3,0.3] -0;4;4;4;4;4;0.4;0.4;0.4;0.4;0.4;0.4;0.4;0.4;char11;char21;char31;varchar11;varchar21;varchar31;string1;2012-03-04;2012-03-04;2012-03-04 04:03:04;2012-03-04 04:03:04;2012-03-04 04:03:04;2012-03-04 04:03:04;[0];[0];[4];[4];[4];[4];[4];[0.4];[2012-03-04,2012-03-04];[2012-03-04 04:03:04];[2012-03-04,2012-03-04];[2012-03-04 04:03:04,2012-03-04 04:03:04,2012-03-04 04:03:04,2012-03-04 04:03:04];[char11,char21,char31];[char11,char21,char31,varchar11,varchar21,varchar31];[char21,char31,varchar11,varchar21,varchar31,string1];[0.4,0.4] -0;5;5;5;5;5;0.5;0.5;0.5;0.5;0.5;0.5;0.5;0.5;char12;char22;char32;varchar12;varchar22;varchar32;string2;2012-03-05;2012-03-05;2012-03-05 05:04:05;2012-03-05 05:04:05;2012-03-05 05:04:05;2012-03-05 05:04:05;[0];[0];[5];[5];[5];[5];[5];[0.5];[2012-03-05,2012-03-05];[2012-03-05 05:04:05];[2012-03-05,2012-03-05];[2012-03-05 05:04:05,2012-03-05 05:04:05,2012-03-05 05:04:05,2012-03-05 05:04:05];[char12,char22,char32];[char12,char22,char32,varchar12,varchar22,varchar32];[char22,char32,varchar12,varchar22,varchar32,string2];[0.5,0.5] -0;6;6;6;6;6;0.6;0.6;0.6;0.6;0.6;0.6;0.6;0.6;char13;char23;char33;varchar13;varchar23;varchar33;string3;2012-03-06;2012-03-06;2012-03-06 06:05:06;2012-03-06 06:05:06;2012-03-06 06:05:06;2012-03-06 06:05:06;[0];[0];[6];[6];[6];[6];[6];[0.6];[2012-03-06,2012-03-06];[2012-03-06 06:05:06];[2012-03-06,2012-03-06];[2012-03-06 06:05:06,2012-03-06 06:05:06,2012-03-06 06:05:06,2012-03-06 06:05:06];[char13,char23,char33];[char13,char23,char33,varchar13,varchar23,varchar33];[char23,char33,varchar13,varchar23,varchar33,string3];[0.6,0.6] -0;7;7;7;7;7;0.7;0.7;0.7;0.7;0.7;0.7;0.7;0.7;char11;char21;char31;varchar11;varchar21;varchar31;string1;2012-03-07;2012-03-07;2012-03-07 07:06:07;2012-03-07 07:06:07;2012-03-07 07:06:07;2012-03-07 07:06:07;[0];[0];[7];[7];[7];[7];[7];[0.7];[2012-03-07,2012-03-07];[2012-03-07 07:06:07];[2012-03-07,2012-03-07];[2012-03-07 07:06:07,2012-03-07 07:06:07,2012-03-07 07:06:07,2012-03-07 07:06:07];[char11,char21,char31];[char11,char21,char31,varchar11,varchar21,varchar31];[char21,char31,varchar11,varchar21,varchar31,string1];[0.7,0.7] -1;8;8;8;8;8;0.8;0.8;0.8;0.8;0.8;0.8;0.8;0.8;char12;char22;char32;varchar12;varchar22;varchar32;string2;2012-03-08;2012-03-08;2012-03-08 08:07:08;2012-03-08 08:07:08;2012-03-08 08:07:08;2012-03-08 08:07:08;[1];[1];[8];[8];[8];[8];[8];[0.8];[2012-03-08,2012-03-08];[2012-03-08 08:07:08];[2012-03-08,2012-03-08];[2012-03-08 08:07:08,2012-03-08 08:07:08,2012-03-08 08:07:08,2012-03-08 08:07:08];[char12,char22,char32];[char12,char22,char32,varchar12,varchar22,varchar32];[char22,char32,varchar12,varchar22,varchar32,string2];[0.8,0.8] -1;9;9;9;9;9;0.9;0.9;0.9;0.9;0.9;0.9;0.9;0.9;char13;char23;char33;varchar13;varchar23;varchar33;string3;2012-03-09;2012-03-09;2012-03-09 09:08:09;2012-03-09 09:08:09;2012-03-09 09:08:09;2012-03-09 09:08:09;[1];[1];[9];[9];[9];[9];[9];[0.9];[2012-03-09,2012-03-09];[2012-03-09 09:08:09];[2012-03-09,2012-03-09];[2012-03-09 09:08:09,2012-03-09 09:08:09,2012-03-09 09:08:09,2012-03-09 09:08:09];[char13,char23,char33];[char13,char23,char33,varchar13,varchar23,varchar33];[char23,char33,varchar13,varchar23,varchar33,string3];[0.9,0.9] -1;10;10;10;10;10;1;1;1;1;1;1;1;1;char11;char21;char31;varchar11;varchar21;varchar31;string1;2012-03-10;2012-03-10;2012-03-10 10:09:10;2012-03-10 10:09:10;2012-03-10 10:09:10;2012-03-10 10:09:10;[1];[1];[10];[10];[10];[10];[10];[1];[2012-03-10,2012-03-10];[2012-03-10 10:09:10];[2012-03-10,2012-03-10];[2012-03-10 10:09:10,2012-03-10 10:09:10,2012-03-10 10:09:10,2012-03-10 10:09:10];[char11,char21,char31];[char11,char21,char31,varchar11,varchar21,varchar31];[char21,char31,varchar11,varchar21,varchar31,string1];[1,1] -1;11;11;11;11;11;1.1;1.1;1.1;1.1;1.1;1.1;1.1;1.1;char12;char22;char32;varchar12;varchar22;varchar32;string2;2012-03-11;2012-03-11;2012-03-11 11:10:11;2012-03-11 11:10:11;2012-03-11 11:10:11;2012-03-11 11:10:11;[1];[1];[11];[11];[11];[11];[11];[1.1];[2012-03-11,2012-03-11];[2012-03-11 11:10:11];[2012-03-11,2012-03-11];[2012-03-11 11:10:11,2012-03-11 11:10:11,2012-03-11 11:10:11,2012-03-11 11:10:11];[char12,char22,char32];[char12,char22,char32,varchar12,varchar22,varchar32];[char22,char32,varchar12,varchar22,varchar32,string2];[1.1,1.1] -1;12;12;12;12;12;1.2;1.2;1.2;1.2;1.2;1.2;1.2;1.2;char13;char23;char33;varchar13;varchar23;varchar33;string3;2012-03-12;2012-03-12;2012-03-12 12:11:12;2012-03-12 12:11:12;2012-03-12 12:11:12;2012-03-12 12:11:12;[1];[1];[12];[12];[12];[12];[12];[1.2];[2012-03-12,2012-03-12];[2012-03-12 12:11:12];[2012-03-12,2012-03-12];[2012-03-12 12:11:12,2012-03-12 12:11:12,2012-03-12 12:11:12,2012-03-12 12:11:12];[char13,char23,char33];[char13,char23,char33,varchar13,varchar23,varchar33];[char23,char33,varchar13,varchar23,varchar33,string3];[1.2,1.2] -null;null;null;null;null;null;null;null;null;null;null;null;null;null;null;null;null;null;null;null;null;null;null;null;null;null;null;null;null;null;null;null;null;null;null;null;null;null;null;null;null;null;null \ No newline at end of file +0;1;1;1;1;1;0.1;0.1;0.1;0.1;0.1;0.1;0.1;0.1;char11;char21;char31;varchar11;varchar21;varchar31;string1;2012-03-01;2012-03-01;2012-03-01 01:00:01;2012-03-01 01:00:01;2012-03-01 01:00:01;2012-03-01 01:00:01;[0];[0];[1];[1];[1];[1];[1];[0.1];[2012-03-01,2012-03-01];[2012-03-01 01:00:01];[2012-03-01,2012-03-01];[2012-03-01 01:00:01,2012-03-01 01:00:01,2012-03-01 01:00:01,2012-03-01 01:00:01];[char11,char21,char31];[char11,char21,char31,varchar11,varchar21,varchar31];[char21,char31,varchar11,varchar21,varchar31,string1];[0.1,0.1];ST_Point(12.1, 32.1);ST_Point(12.1, 32.1) +0;2;2;2;2;2;0.2;0.2;0.2;0.2;0.2;0.2;0.2;0.2;char12;char22;char32;varchar12;varchar22;varchar32;string2;2012-03-02;2012-03-02;2012-03-02 02:01:02;2012-03-02 02:01:02;2012-03-02 02:01:02;2012-03-02 02:01:02;[0];[0];[2];[2];[2];[2];[2];[0.2];[2012-03-02,2012-03-02];[2012-03-02 02:01:02];[2012-03-02,2012-03-02];[2012-03-02 02:01:02,2012-03-02 02:01:02,2012-03-02 02:01:02,2012-03-02 02:01:02];[char12,char22,char32];[char12,char22,char32,varchar12,varchar22,varchar32];[char22,char32,varchar12,varchar22,varchar32,string2];[0.2,0.2];ST_Point(12.2, 32.2);ST_Point(12.2, 32.2) +0;3;3;3;3;3;0.3;0.3;0.3;0.3;0.3;0.3;0.3;0.3;char13;char23;char33;varchar13;varchar23;varchar33;string3;2012-03-03;2012-03-03;2012-03-03 03:02:03;2012-03-03 03:02:03;2012-03-03 03:02:03;2012-03-03 03:02:03;[0];[0];[3];[3];[3];[3];[3];[0.3];[2012-03-03,2012-03-03];[2012-03-03 03:02:03];[2012-03-03,2012-03-03];[2012-03-03 03:02:03,2012-03-03 03:02:03,2012-03-03 03:02:03,2012-03-03 03:02:03];[char13,char23,char33];[char13,char23,char33,varchar13,varchar23,varchar33];[char23,char33,varchar13,varchar23,varchar33,string3];[0.3,0.3];ST_Point(12.3, 32.3);ST_Point(12.3, 32.3) +0;4;4;4;4;4;0.4;0.4;0.4;0.4;0.4;0.4;0.4;0.4;char11;char21;char31;varchar11;varchar21;varchar31;string1;2012-03-04;2012-03-04;2012-03-04 04:03:04;2012-03-04 04:03:04;2012-03-04 04:03:04;2012-03-04 04:03:04;[0];[0];[4];[4];[4];[4];[4];[0.4];[2012-03-04,2012-03-04];[2012-03-04 04:03:04];[2012-03-04,2012-03-04];[2012-03-04 04:03:04,2012-03-04 04:03:04,2012-03-04 04:03:04,2012-03-04 04:03:04];[char11,char21,char31];[char11,char21,char31,varchar11,varchar21,varchar31];[char21,char31,varchar11,varchar21,varchar31,string1];[0.4,0.4];ST_Point(12.4, 32.4);ST_Point(12.4, 32.4) +0;5;5;5;5;5;0.5;0.5;0.5;0.5;0.5;0.5;0.5;0.5;char12;char22;char32;varchar12;varchar22;varchar32;string2;2012-03-05;2012-03-05;2012-03-05 05:04:05;2012-03-05 05:04:05;2012-03-05 05:04:05;2012-03-05 05:04:05;[0];[0];[5];[5];[5];[5];[5];[0.5];[2012-03-05,2012-03-05];[2012-03-05 05:04:05];[2012-03-05,2012-03-05];[2012-03-05 05:04:05,2012-03-05 05:04:05,2012-03-05 05:04:05,2012-03-05 05:04:05];[char12,char22,char32];[char12,char22,char32,varchar12,varchar22,varchar32];[char22,char32,varchar12,varchar22,varchar32,string2];[0.5,0.5];ST_Point(12.5, 32.5);ST_Point(12.5, 32.5) +0;6;6;6;6;6;0.6;0.6;0.6;0.6;0.6;0.6;0.6;0.6;char13;char23;char33;varchar13;varchar23;varchar33;string3;2012-03-06;2012-03-06;2012-03-06 06:05:06;2012-03-06 06:05:06;2012-03-06 06:05:06;2012-03-06 06:05:06;[0];[0];[6];[6];[6];[6];[6];[0.6];[2012-03-06,2012-03-06];[2012-03-06 06:05:06];[2012-03-06,2012-03-06];[2012-03-06 06:05:06,2012-03-06 06:05:06,2012-03-06 06:05:06,2012-03-06 06:05:06];[char13,char23,char33];[char13,char23,char33,varchar13,varchar23,varchar33];[char23,char33,varchar13,varchar23,varchar33,string3];[0.6,0.6];ST_Point(12.6, 32.6);ST_Point(12.6, 32.6) +0;7;7;7;7;7;0.7;0.7;0.7;0.7;0.7;0.7;0.7;0.7;char11;char21;char31;varchar11;varchar21;varchar31;string1;2012-03-07;2012-03-07;2012-03-07 07:06:07;2012-03-07 07:06:07;2012-03-07 07:06:07;2012-03-07 07:06:07;[0];[0];[7];[7];[7];[7];[7];[0.7];[2012-03-07,2012-03-07];[2012-03-07 07:06:07];[2012-03-07,2012-03-07];[2012-03-07 07:06:07,2012-03-07 07:06:07,2012-03-07 07:06:07,2012-03-07 07:06:07];[char11,char21,char31];[char11,char21,char31,varchar11,varchar21,varchar31];[char21,char31,varchar11,varchar21,varchar31,string1];[0.7,0.7];ST_Point(12.7, 32.7);ST_Point(12.7, 32.7) +1;8;8;8;8;8;0.8;0.8;0.8;0.8;0.8;0.8;0.8;0.8;char12;char22;char32;varchar12;varchar22;varchar32;string2;2012-03-08;2012-03-08;2012-03-08 08:07:08;2012-03-08 08:07:08;2012-03-08 08:07:08;2012-03-08 08:07:08;[1];[1];[8];[8];[8];[8];[8];[0.8];[2012-03-08,2012-03-08];[2012-03-08 08:07:08];[2012-03-08,2012-03-08];[2012-03-08 08:07:08,2012-03-08 08:07:08,2012-03-08 08:07:08,2012-03-08 08:07:08];[char12,char22,char32];[char12,char22,char32,varchar12,varchar22,varchar32];[char22,char32,varchar12,varchar22,varchar32,string2];[0.8,0.8];ST_Point(11.1, 31.1);ST_Point(11.1, 31.1) +1;9;9;9;9;9;0.9;0.9;0.9;0.9;0.9;0.9;0.9;0.9;char13;char23;char33;varchar13;varchar23;varchar33;string3;2012-03-09;2012-03-09;2012-03-09 09:08:09;2012-03-09 09:08:09;2012-03-09 09:08:09;2012-03-09 09:08:09;[1];[1];[9];[9];[9];[9];[9];[0.9];[2012-03-09,2012-03-09];[2012-03-09 09:08:09];[2012-03-09,2012-03-09];[2012-03-09 09:08:09,2012-03-09 09:08:09,2012-03-09 09:08:09,2012-03-09 09:08:09];[char13,char23,char33];[char13,char23,char33,varchar13,varchar23,varchar33];[char23,char33,varchar13,varchar23,varchar33,string3];[0.9,0.9];ST_Point(12.1, 32.1);ST_Point(12.1, 32.1) +1;10;10;10;10;10;1;1;1;1;1;1;1;1;char11;char21;char31;varchar11;varchar21;varchar31;string1;2012-03-10;2012-03-10;2012-03-10 10:09:10;2012-03-10 10:09:10;2012-03-10 10:09:10;2012-03-10 10:09:10;[1];[1];[10];[10];[10];[10];[10];[1];[2012-03-10,2012-03-10];[2012-03-10 10:09:10];[2012-03-10,2012-03-10];[2012-03-10 10:09:10,2012-03-10 10:09:10,2012-03-10 10:09:10,2012-03-10 10:09:10];[char11,char21,char31];[char11,char21,char31,varchar11,varchar21,varchar31];[char21,char31,varchar11,varchar21,varchar31,string1];[1,1];ST_Point(19.1, 39.1);ST_Point(19.1, 39.1) +1;11;11;11;11;11;1.1;1.1;1.1;1.1;1.1;1.1;1.1;1.1;char12;char22;char32;varchar12;varchar22;varchar32;string2;2012-03-11;2012-03-11;2012-03-11 11:10:11;2012-03-11 11:10:11;2012-03-11 11:10:11;2012-03-11 11:10:11;[1];[1];[11];[11];[11];[11];[11];[1.1];[2012-03-11,2012-03-11];[2012-03-11 11:10:11];[2012-03-11,2012-03-11];[2012-03-11 11:10:11,2012-03-11 11:10:11,2012-03-11 11:10:11,2012-03-11 11:10:11];[char12,char22,char32];[char12,char22,char32,varchar12,varchar22,varchar32];[char22,char32,varchar12,varchar22,varchar32,string2];[1.1,1.1];ST_Point(17.1, 37.1);ST_Point(17.1, 37.1) +1;12;12;12;12;12;1.2;1.2;1.2;1.2;1.2;1.2;1.2;1.2;char13;char23;char33;varchar13;varchar23;varchar33;string3;2012-03-12;2012-03-12;2012-03-12 12:11:12;2012-03-12 12:11:12;2012-03-12 12:11:12;2012-03-12 12:11:12;[1];[1];[12];[12];[12];[12];[12];[1.2];[2012-03-12,2012-03-12];[2012-03-12 12:11:12];[2012-03-12,2012-03-12];[2012-03-12 12:11:12,2012-03-12 12:11:12,2012-03-12 12:11:12,2012-03-12 12:11:12];[char13,char23,char33];[char13,char23,char33,varchar13,varchar23,varchar33];[char23,char33,varchar13,varchar23,varchar33,string3];[1.2,1.2];ST_Point(22.1, 22.1);ST_Point(22.1, 22.1) +null;null;null;null;null;null;null;null;null;null;null;null;null;null;null;null;null;null;null;null;null;null;null;null;null;null;null;null;null;null;null;null;null;null;null;null;null;null;null;null;null;null;null;null;null \ No newline at end of file diff --git a/regression-test/data/nereids_function_p0/scalar_function/R-W.out b/regression-test/data/nereids_function_p0/scalar_function/R-W.out index f7b4e83141912d..d3b52a7e03dd30 100644 --- a/regression-test/data/nereids_function_p0/scalar_function/R-W.out +++ b/regression-test/data/nereids_function_p0/scalar_function/R-W.out @@ -254,6 +254,36 @@ string3 1.1 1.2 +-- !sql -- +\N +v +varc +varchar +varchar11v +va +varch +varchar1 +varchar12va +var +varcha +varchar13 +varchar13var + +-- !sql -- +\N +s +stri +string1 +string1str +st +strin +string2s +string2stri +str +string +string3st +string3strin + -- !sql -- null varchar11 @@ -569,6 +599,66 @@ string3 2012-03-11T11:10:11 2012-03-12T12:11:12 +-- !sql -- +\N +2012-03-01T01:00:02 +2012-03-02T02:01:04 +2012-03-03T03:02:06 +2012-03-04T04:03:08 +2012-03-05T05:04:10 +2012-03-06T06:05:12 +2012-03-07T07:06:14 +2012-03-08T08:07:16 +2012-03-09T09:08:18 +2012-03-10T10:09:20 +2012-03-11T11:10:22 +2012-03-12T12:11:24 + +-- !sql -- +\N +2012-03-01T01:00:02 +2012-03-02T02:01:04 +2012-03-03T03:02:06 +2012-03-04T04:03:08 +2012-03-05T05:04:10 +2012-03-06T06:05:12 +2012-03-07T07:06:14 +2012-03-08T08:07:16 +2012-03-09T09:08:18 +2012-03-10T10:09:20 +2012-03-11T11:10:22 +2012-03-12T12:11:24 + +-- !sql -- +\N +2012-03-01T00:00:01 +2012-03-02T00:00:02 +2012-03-03T00:00:03 +2012-03-04T00:00:04 +2012-03-05T00:00:05 +2012-03-06T00:00:06 +2012-03-07T00:00:07 +2012-03-08T00:00:08 +2012-03-09T00:00:09 +2012-03-10T00:00:10 +2012-03-11T00:00:11 +2012-03-12T00:00:12 + +-- !sql -- +\N +2012-03-01T00:00:01 +2012-03-02T00:00:02 +2012-03-03T00:00:03 +2012-03-04T00:00:04 +2012-03-05T00:00:05 +2012-03-06T00:00:06 +2012-03-07T00:00:07 +2012-03-08T00:00:08 +2012-03-09T00:00:09 +2012-03-10T00:00:10 +2012-03-11T00:00:11 +2012-03-12T00:00:12 + -- !sql -- \N 0 @@ -704,6 +794,66 @@ string3 0 0 +-- !sql -- +\N +2012-03-01T01:00 +2012-03-02T02:01 +2012-03-03T03:02 +2012-03-04T04:03 +2012-03-05T05:04 +2012-03-06T06:05 +2012-03-07T07:06 +2012-03-08T08:07 +2012-03-09T09:08 +2012-03-10T10:09 +2012-03-11T11:10 +2012-03-12T12:11 + +-- !sql -- +\N +2012-03-01T01:00 +2012-03-02T02:01 +2012-03-03T03:02 +2012-03-04T04:03 +2012-03-05T05:04 +2012-03-06T06:05 +2012-03-07T07:06 +2012-03-08T08:07 +2012-03-09T09:08 +2012-03-10T10:09 +2012-03-11T11:10 +2012-03-12T12:11 + +-- !sql -- +\N +2012-02-29T23:59:59 +2012-03-01T23:59:58 +2012-03-02T23:59:57 +2012-03-03T23:59:56 +2012-03-04T23:59:55 +2012-03-05T23:59:54 +2012-03-06T23:59:53 +2012-03-07T23:59:52 +2012-03-08T23:59:51 +2012-03-09T23:59:50 +2012-03-10T23:59:49 +2012-03-11T23:59:48 + +-- !sql -- +\N +2012-02-29T23:59:59 +2012-03-01T23:59:58 +2012-03-02T23:59:57 +2012-03-03T23:59:56 +2012-03-04T23:59:55 +2012-03-05T23:59:54 +2012-03-06T23:59:53 +2012-03-07T23:59:52 +2012-03-08T23:59:51 +2012-03-09T23:59:50 +2012-03-10T23:59:49 +2012-03-11T23:59:48 + -- !sql -- \N 1 @@ -749,66 +899,576 @@ true true true --- !sql -- -129a784acb089ea1ab28ff7a0e740d362e75bd5a7486b1a224e3e1c701bdf2fd -96e7a2aa23bf21565359ac989444ccc219d1320adde0b155744f8dcf77e050b0 -96e7a2aa23bf21565359ac989444ccc219d1320adde0b155744f8dcf77e050b0 -96e7a2aa23bf21565359ac989444ccc219d1320adde0b155744f8dcf77e050b0 -96e7a2aa23bf21565359ac989444ccc219d1320adde0b155744f8dcf77e050b0 -3d09a4969e26fcf58cbe6ac055b27793709e245b7273d17c7ec78661ca9a5c52 -3d09a4969e26fcf58cbe6ac055b27793709e245b7273d17c7ec78661ca9a5c52 -3d09a4969e26fcf58cbe6ac055b27793709e245b7273d17c7ec78661ca9a5c52 -3d09a4969e26fcf58cbe6ac055b27793709e245b7273d17c7ec78661ca9a5c52 -c07750bf52dc98f4593882646c11b50c24c70890ea8288a8f1ac7c4a187d6635 -c07750bf52dc98f4593882646c11b50c24c70890ea8288a8f1ac7c4a187d6635 -c07750bf52dc98f4593882646c11b50c24c70890ea8288a8f1ac7c4a187d6635 -c07750bf52dc98f4593882646c11b50c24c70890ea8288a8f1ac7c4a187d6635 - --- !sql -- -129a784acb089ea1ab28ff7a0e740d362e75bd5a7486b1a224e3e1c701bdf2fd -bd9a11352a4d84a4725035750ddea145189a72b6eb89c0e07fa9d3b21d70004a -bd9a11352a4d84a4725035750ddea145189a72b6eb89c0e07fa9d3b21d70004a -bd9a11352a4d84a4725035750ddea145189a72b6eb89c0e07fa9d3b21d70004a -bd9a11352a4d84a4725035750ddea145189a72b6eb89c0e07fa9d3b21d70004a -04f935885e8384cf5b8c2242dba4492840795a24084b70486dc2357c8944bd64 -04f935885e8384cf5b8c2242dba4492840795a24084b70486dc2357c8944bd64 -04f935885e8384cf5b8c2242dba4492840795a24084b70486dc2357c8944bd64 -04f935885e8384cf5b8c2242dba4492840795a24084b70486dc2357c8944bd64 -1450c7f24515f5566159269a97a95f96d9746fe768a31e069581d69f3f6e48e0 -1450c7f24515f5566159269a97a95f96d9746fe768a31e069581d69f3f6e48e0 -1450c7f24515f5566159269a97a95f96d9746fe768a31e069581d69f3f6e48e0 -1450c7f24515f5566159269a97a95f96d9746fe768a31e069581d69f3f6e48e0 - --- !sql -- -129a784acb089ea1ab28ff7a0e740d362e75bd5a7486b1a224e3e1c701bdf2fd -96e7a2aa23bf21565359ac989444ccc219d1320adde0b155744f8dcf77e050b0 -96e7a2aa23bf21565359ac989444ccc219d1320adde0b155744f8dcf77e050b0 -96e7a2aa23bf21565359ac989444ccc219d1320adde0b155744f8dcf77e050b0 -96e7a2aa23bf21565359ac989444ccc219d1320adde0b155744f8dcf77e050b0 -3d09a4969e26fcf58cbe6ac055b27793709e245b7273d17c7ec78661ca9a5c52 -3d09a4969e26fcf58cbe6ac055b27793709e245b7273d17c7ec78661ca9a5c52 -3d09a4969e26fcf58cbe6ac055b27793709e245b7273d17c7ec78661ca9a5c52 -3d09a4969e26fcf58cbe6ac055b27793709e245b7273d17c7ec78661ca9a5c52 -c07750bf52dc98f4593882646c11b50c24c70890ea8288a8f1ac7c4a187d6635 -c07750bf52dc98f4593882646c11b50c24c70890ea8288a8f1ac7c4a187d6635 -c07750bf52dc98f4593882646c11b50c24c70890ea8288a8f1ac7c4a187d6635 -c07750bf52dc98f4593882646c11b50c24c70890ea8288a8f1ac7c4a187d6635 - --- !sql -- -129a784acb089ea1ab28ff7a0e740d362e75bd5a7486b1a224e3e1c701bdf2fd -bd9a11352a4d84a4725035750ddea145189a72b6eb89c0e07fa9d3b21d70004a -bd9a11352a4d84a4725035750ddea145189a72b6eb89c0e07fa9d3b21d70004a -bd9a11352a4d84a4725035750ddea145189a72b6eb89c0e07fa9d3b21d70004a -bd9a11352a4d84a4725035750ddea145189a72b6eb89c0e07fa9d3b21d70004a -04f935885e8384cf5b8c2242dba4492840795a24084b70486dc2357c8944bd64 -04f935885e8384cf5b8c2242dba4492840795a24084b70486dc2357c8944bd64 -04f935885e8384cf5b8c2242dba4492840795a24084b70486dc2357c8944bd64 -04f935885e8384cf5b8c2242dba4492840795a24084b70486dc2357c8944bd64 -1450c7f24515f5566159269a97a95f96d9746fe768a31e069581d69f3f6e48e0 -1450c7f24515f5566159269a97a95f96d9746fe768a31e069581d69f3f6e48e0 -1450c7f24515f5566159269a97a95f96d9746fe768a31e069581d69f3f6e48e0 -1450c7f24515f5566159269a97a95f96d9746fe768a31e069581d69f3f6e48e0 - +-- !sql -- +129a784acb089ea1ab28ff7a0e740d362e75bd5a7486b1a224e3e1c701bdf2fd +96e7a2aa23bf21565359ac989444ccc219d1320adde0b155744f8dcf77e050b0 +96e7a2aa23bf21565359ac989444ccc219d1320adde0b155744f8dcf77e050b0 +96e7a2aa23bf21565359ac989444ccc219d1320adde0b155744f8dcf77e050b0 +96e7a2aa23bf21565359ac989444ccc219d1320adde0b155744f8dcf77e050b0 +3d09a4969e26fcf58cbe6ac055b27793709e245b7273d17c7ec78661ca9a5c52 +3d09a4969e26fcf58cbe6ac055b27793709e245b7273d17c7ec78661ca9a5c52 +3d09a4969e26fcf58cbe6ac055b27793709e245b7273d17c7ec78661ca9a5c52 +3d09a4969e26fcf58cbe6ac055b27793709e245b7273d17c7ec78661ca9a5c52 +c07750bf52dc98f4593882646c11b50c24c70890ea8288a8f1ac7c4a187d6635 +c07750bf52dc98f4593882646c11b50c24c70890ea8288a8f1ac7c4a187d6635 +c07750bf52dc98f4593882646c11b50c24c70890ea8288a8f1ac7c4a187d6635 +c07750bf52dc98f4593882646c11b50c24c70890ea8288a8f1ac7c4a187d6635 + +-- !sql -- +129a784acb089ea1ab28ff7a0e740d362e75bd5a7486b1a224e3e1c701bdf2fd +bd9a11352a4d84a4725035750ddea145189a72b6eb89c0e07fa9d3b21d70004a +bd9a11352a4d84a4725035750ddea145189a72b6eb89c0e07fa9d3b21d70004a +bd9a11352a4d84a4725035750ddea145189a72b6eb89c0e07fa9d3b21d70004a +bd9a11352a4d84a4725035750ddea145189a72b6eb89c0e07fa9d3b21d70004a +04f935885e8384cf5b8c2242dba4492840795a24084b70486dc2357c8944bd64 +04f935885e8384cf5b8c2242dba4492840795a24084b70486dc2357c8944bd64 +04f935885e8384cf5b8c2242dba4492840795a24084b70486dc2357c8944bd64 +04f935885e8384cf5b8c2242dba4492840795a24084b70486dc2357c8944bd64 +1450c7f24515f5566159269a97a95f96d9746fe768a31e069581d69f3f6e48e0 +1450c7f24515f5566159269a97a95f96d9746fe768a31e069581d69f3f6e48e0 +1450c7f24515f5566159269a97a95f96d9746fe768a31e069581d69f3f6e48e0 +1450c7f24515f5566159269a97a95f96d9746fe768a31e069581d69f3f6e48e0 + +-- !sql -- +129a784acb089ea1ab28ff7a0e740d362e75bd5a7486b1a224e3e1c701bdf2fd +96e7a2aa23bf21565359ac989444ccc219d1320adde0b155744f8dcf77e050b0 +96e7a2aa23bf21565359ac989444ccc219d1320adde0b155744f8dcf77e050b0 +96e7a2aa23bf21565359ac989444ccc219d1320adde0b155744f8dcf77e050b0 +96e7a2aa23bf21565359ac989444ccc219d1320adde0b155744f8dcf77e050b0 +3d09a4969e26fcf58cbe6ac055b27793709e245b7273d17c7ec78661ca9a5c52 +3d09a4969e26fcf58cbe6ac055b27793709e245b7273d17c7ec78661ca9a5c52 +3d09a4969e26fcf58cbe6ac055b27793709e245b7273d17c7ec78661ca9a5c52 +3d09a4969e26fcf58cbe6ac055b27793709e245b7273d17c7ec78661ca9a5c52 +c07750bf52dc98f4593882646c11b50c24c70890ea8288a8f1ac7c4a187d6635 +c07750bf52dc98f4593882646c11b50c24c70890ea8288a8f1ac7c4a187d6635 +c07750bf52dc98f4593882646c11b50c24c70890ea8288a8f1ac7c4a187d6635 +c07750bf52dc98f4593882646c11b50c24c70890ea8288a8f1ac7c4a187d6635 + +-- !sql -- +129a784acb089ea1ab28ff7a0e740d362e75bd5a7486b1a224e3e1c701bdf2fd +bd9a11352a4d84a4725035750ddea145189a72b6eb89c0e07fa9d3b21d70004a +bd9a11352a4d84a4725035750ddea145189a72b6eb89c0e07fa9d3b21d70004a +bd9a11352a4d84a4725035750ddea145189a72b6eb89c0e07fa9d3b21d70004a +bd9a11352a4d84a4725035750ddea145189a72b6eb89c0e07fa9d3b21d70004a +04f935885e8384cf5b8c2242dba4492840795a24084b70486dc2357c8944bd64 +04f935885e8384cf5b8c2242dba4492840795a24084b70486dc2357c8944bd64 +04f935885e8384cf5b8c2242dba4492840795a24084b70486dc2357c8944bd64 +04f935885e8384cf5b8c2242dba4492840795a24084b70486dc2357c8944bd64 +1450c7f24515f5566159269a97a95f96d9746fe768a31e069581d69f3f6e48e0 +1450c7f24515f5566159269a97a95f96d9746fe768a31e069581d69f3f6e48e0 +1450c7f24515f5566159269a97a95f96d9746fe768a31e069581d69f3f6e48e0 +1450c7f24515f5566159269a97a95f96d9746fe768a31e069581d69f3f6e48e0 + +-- !sql -- +\N +\N +\N +\N +\N +\N +\N +\N +\N +\N +\N +\N +\N + +-- !sql -- +\N +\N +\N +\N +\N +\N +\N +\N +\N +\N +\N +\N +\N + +-- !sql -- +�oB�8b����!�O� +��ڂ\r3��F��5r8 +��ڂ\r3��F��5r8 +��ڂ\r3��F��5r8 +��ڂ\r3��F��5r8 +\nM�`�5l�5�$��K +\nM�`�5l�5�$��K +\nM�`�5l�5�$��K +\nM�`�5l�5�$��K +j��\n��k�pZ�>��6 +j��\n��k�pZ�>��6 +j��\n��k�pZ�>��6 +j��\n��k�pZ�>��6 + +-- !sql -- +�oB�8b����!�O� +�/����Z5Aw��� +�/����Z5Aw��� +�/����Z5Aw��� +�/����Z5Aw��� +7�v�$QG�o~�L�� +7�v�$QG�o~�L�� +7�v�$QG�o~�L�� +7�v�$QG�o~�L�� +I[S /�^Ptg��u +I[S /�^Ptg��u +I[S /�^Ptg��u +I[S /�^Ptg��u + +-- !sql -- +\N +\N +\N +\N +\N +\N +\N +\N +\N +\N +\N +\N +\N + +-- !sql -- +\N +\N +\N +\N +\N +\N +\N +\N +\N +\N +\N +\N +\N + +-- !sql -- +\N +0.31622776601683794 +0.4472135954999579 +0.5477225575051661 +0.6324555320336759 +0.7071067811865476 +0.7745966692414834 +0.8366600265340756 +0.8944271909999159 +0.9486832980505138 +1.0 +1.0488088481701516 +1.0954451150103321 + +-- !sql -- +\N +\N +\N +\N +\N +\N +\N +\N +\N +\N +\N +\N +\N + +-- !sql -- +\N +\N +\N +\N +\N +\N +\N +\N +\N +\N +\N +\N +\N + +-- !sql -- +\N +\N +\N +\N +\N +\N +\N +\N +\N +\N +\N +\N +\N + +-- !sql -- +\N +\N +\N +\N +\N +\N +\N +\N +\N +\N +\N +\N +\N + +-- !sql -- +\N +gn�����?ʣq5m�\\?�%p�\\?������< +��jr���?<��a�l?ʣq5m�l?������< +'}�����?j�z;ru?�*�VNru?g$v���< +���ə��?'�4�|?<��a�|?������< +���K`��?݉+ ߁?!L��7߁?+�nT��< +�&���?���q�?j�z;r�?d$v��= +j�E����?�򊸿�?:W:�?��\ / = +��\r-g��?��t}��?(�4��? �����= +C�N����?`X�-�?o�8��?�����w= +��_<���?'���Xޑ?݉+ ߑ? �nT�= +\\m����?�%1!���?=�~��?a�3$� = +�b8h��?��ƹp�?���q�?W$v��#= + +-- !sql -- +\N +\N +\N +\N +\N +\N +\N +\N +\N +\N +\N +\N +\N + +-- !sql -- +\N +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 + +-- !sql -- +\N +\N +\N +\N +\N +\N +\N +\N +\N +\N +\N +\N +\N + +-- !sql -- +\N +\N +\N +\N +\N +\N +\N +\N +\N +\N +\N +\N +\N + +-- !sql -- +\N +\N +\N +\N +\N +\N +\N +\N +\N +\N +\N +\N +\N + +-- !sql -- +\N +\N +\N +\N +\N +\N +\N +\N +\N +\N +\N +\N +\N + +-- !sql -- +\N +\N +\N +\N +\N +\N +\N +\N +\N +\N +\N +\N +\N + +-- !sql -- +\N +\N +\N +\N +\N +\N +\N +\N +\N +\N +\N +\N +\N + +-- !sql -- +\N +\N +\N +\N +\N +\N +\N +\N +\N +\N +\N +\N +\N + +-- !sql -- +\N +\N +\N +\N +\N +\N +\N +\N +\N +\N +\N +\N +\N + +-- !sql -- +\N +gn�����?ʣq5m�\\?�%p�\\? +��jr���?<��a�l?ʣq5m�l? +'}�����?j�z;ru?�*�VNru? +���ə��?'�4�|?<��a�|? +���K`��?݉+ ߁?!L��7߁? +�&���?���q�?j�z;r�? +j�E����?�򊸿�?:W:�? +��\r-g��?��t}��?(�4��? +C�N����?`X�-�?o�8��? +��_<���?'���Xޑ?݉+ ߑ? +\\m����?�%1!���?=�~��? +�b8h��?��ƹp�?���q�? + +-- !sql -- +\N +\N +\N +\N +\N +\N +\N +\N +\N +\N +\N +\N +\N + +-- !sql -- +\N +\N +\N +\N +\N +\N +\N +\N +\N +\N +\N +\N +\N + +-- !sql -- +\N +\N +\N +\N +\N +\N +\N +\N +\N +\N +\N +\N +\N + +-- !sql -- +\N +\N +\N +\N +\N +\N +\N +\N +\N +\N +\N +\N +\N + +-- !sql -- +\N +\N +\N +\N +\N +\N +\N +\N +\N +\N +\N +\N +\N + +-- !sql -- +\N +\N +\N +\N +\N +\N +\N +\N +\N +\N +\N +\N +\N + +-- !sql -- +\N +\N +\N +\N +\N +\N +\N +\N +\N +\N +\N +\N +\N + +-- !sql -- +\N +\N +\N +\N +\N +\N +\N +\N +\N +\N +\N +\N +\N + +-- !sql -- +\N +\N +\N +\N +\N +\N +\N +\N +\N +\N +\N +\N +\N + +-- !sql -- +\N +\N +\N +\N +\N +\N +\N +\N +\N +\N +\N +\N +\N + +-- !sql -- +true +true +true +true +true +true +true +true +true +true +true +true +true + -- !sql -- true true @@ -824,6 +1484,96 @@ true true true +-- !sql -- +\N +v +varc +varchar +varchar11 +va +varch +varchar1 +varchar12 +var +varcha +varchar13 +varchar13 + +-- !sql -- +\N +s +stri +string1 +string1 +st +strin +string2 +string2 +str +string +string3 +string3 + +-- !sql -- + +1 +ar11 +rchar11 +varchar11 +12 +har12 +archar12 +varchar12 +r13 +char13 +varchar13 +varchar13 + +-- !sql -- + +1 +ing1 +string1 +string1 +g2 +ring2 +string2 +string2 +ng3 +tring3 +string3 +string3 + +-- !sql -- +0000-00-00 00:00:00 +0000-00-00 00:00:00 +0000-00-00 00:00:00 +0000-00-00 00:00:00 +0000-00-00 00:00:00 +0000-00-00 00:00:00 +0000-00-00 00:00:00 +0000-00-00 00:00:00 +0000-00-00 00:00:00 +0000-00-00 00:00:00 +0000-00-00 00:00:00 +0000-00-00 00:00:00 +0000-00-00 00:00:00 + +-- !sql -- +0000-00-00 00:00:00 +0000-00-00 00:00:00 +0000-00-00 00:00:00 +0000-00-00 00:00:00 +0000-00-00 00:00:00 +0000-00-00 00:00:00 +0000-00-00 00:00:00 +0000-00-00 00:00:00 +0000-00-00 00:00:00 +0000-00-00 00:00:00 +0000-00-00 00:00:00 +0000-00-00 00:00:00 +0000-00-00 00:00:00 + -- !sql -- \N vvarchar11 @@ -944,20 +1694,170 @@ g3 +-- !sql -- +null +varchar11 +varchar11 +varchar11 +varchar11 +varchar12 +varchar12 +varchar12 +varchar12 +varchar13 +varchar13 +varchar13 +varchar13 + +-- !sql -- +null +string1 +string1 +string1 +string1 +string2 +string2 +string2 +string2 +string3 +string3 +string3 +string3 + -- !sql -- \N -0.10033467208545055 -0.2027100355086725 -0.30933624960962325 +0.10033467208545054 +0.20271003550867248 +0.3093362496096232 0.4227932187381618 0.5463024898437905 0.6841368083416923 -0.8422883804630794 +0.8422883804630793 1.0296385570503641 -1.2601582175503392 -1.5574077246549023 -1.9647596572486523 -2.5721516221263188 +1.260158217550339 +1.557407724654902 +1.9647596572486525 +2.5721516221263183 + +-- !sql -- +\N +00:00:00 +00:00:00 +00:00:00 +00:00:00 +00:00:00 +00:00:00 +00:00:00 +00:00:00 +00:00:00 +00:00:00 +00:00:00 +00:00:00 + +-- !sql -- +\N +00:00:00 +00:00:00 +00:00:00 +00:00:00 +00:00:00 +00:00:00 +00:00:00 +00:00:00 +00:00:00 +00:00:00 +00:00:00 +00:00:00 + +-- !sql -- +\N +01:00:01 +02:01:02 +03:02:03 +04:03:04 +05:04:05 +06:05:06 +07:06:07 +08:07:08 +09:08:09 +10:09:10 +11:10:11 +12:11:12 + +-- !sql -- +\N +-01:00:01 +-02:01:02 +-03:02:03 +-04:03:04 +-05:04:05 +-06:05:06 +-07:06:07 +-08:07:08 +-09:08:09 +-10:09:10 +-11:10:11 +-12:11:12 + +-- !sql -- +\N +00:00:00 +00:00:00 +00:00:00 +00:00:00 +00:00:00 +00:00:00 +00:00:00 +00:00:00 +00:00:00 +00:00:00 +00:00:00 +00:00:00 + +-- !sql -- +\N +00:00:00 +00:00:00 +00:00:00 +00:00:00 +00:00:00 +00:00:00 +00:00:00 +00:00:00 +00:00:00 +00:00:00 +00:00:00 +00:00:00 + +-- !sql -- +\N +-01:00:01 +-02:01:02 +-03:02:03 +-04:03:04 +-05:04:05 +-06:05:06 +-07:06:07 +-08:07:08 +-09:08:09 +-10:09:10 +-11:10:11 +-12:11:12 + +-- !sql -- +\N +2012-03-01T01:00:01 +2012-03-02T02:01:02 +2012-03-03T03:02:03 +2012-03-04T04:03:04 +2012-03-05T05:04:05 +2012-03-06T06:05:06 +2012-03-07T07:06:07 +2012-03-08T08:07:08 +2012-03-09T09:08:09 +2012-03-10T10:09:10 +2012-03-11T11:10:11 +2012-03-12T12:11:12 -- !sql -- \N @@ -1019,6 +1919,51 @@ c3RyaW5nMw== \N \N +-- !sql -- +\N +\N +\N +\N +\N +\N +\N +\N +\N +\N +\N +\N +\N + +-- !sql -- +\N +\N +\N +\N +\N +\N +\N +\N +\N +\N +\N +\N +\N + +-- !sql -- +\N +2012-03-01 +2012-03-02 +2012-03-03 +2012-03-04 +2012-03-05 +2012-03-06 +2012-03-07 +2012-03-08 +2012-03-09 +2012-03-10 +2012-03-11 +2012-03-12 + -- !sql -- \N 2012-03-01 @@ -1180,7 +2125,7 @@ string3 0.7 0.8 0.9 -1 +1.0 1.1 1.2 @@ -1784,6 +2729,51 @@ STRING3 2012-03-11 2012-03-12 +-- !sql -- +\N +9 +9 +9 +9 +10 +10 +10 +10 +10 +10 +10 +11 + +-- !sql -- +\N +9 +9 +9 +9 +10 +10 +10 +10 +10 +10 +10 +11 + +-- !sql -- +\N +9 +9 +9 +9 +10 +10 +10 +10 +10 +10 +10 +11 + -- !sql -- \N 3 diff --git a/regression-test/suites/nereids_function_p0/gen.py b/regression-test/suites/nereids_function_p0/gen.py index 5e1552fc16ab34..d273931693c6db 100644 --- a/regression-test/suites/nereids_function_p0/gen.py +++ b/regression-test/suites/nereids_function_p0/gen.py @@ -19,9 +19,28 @@ import os import re - +from typing import List +DORIS_HOME = "../../../" mp = {} - +mp1 = {'tinyint': ['ktint'], + 'smallint': ['ksint'], + 'integer': ['kint'], + 'bigint': ['kbint'], + 'largeint': ['klint'], + 'float': ['kfloat'], + 'double': ['kdbl'], + 'decimalv2': ['kdcmls1'], + 'char': ['kchrs1'], + 'varchar': ['kvchrs1'], + 'string': ['kstr'], + 'date': ['kdt'], + 'datetime': ['kdtm'], + 'datev2': ['kdtv2'], + 'datetimev2': ['kdtmv2s1'], + 'boolean': ['kbool'], + 'st_string': ['st_point_str'], + 'st_varchar': ['st_point_vc'], + '': ['']} def run(path): for f in os.listdir(path): @@ -45,31 +64,18 @@ def run(path): lines = [[to_snake_case(s1).replace('_', '') for s1 in s.split(', ')] for s in lines] mp[name] = lines +def generete_args(func_name: str, args_type: List[str]): + need_change = lambda x : x == 'string' or x == 'varchar' + if "st_" == func_name[:3]: + need_change = lambda x : x == 'string' or x == 'varchar' + args_type = ["st_"+t if need_change(t) else t for t in args_type] + return [mp1[s][0] for s in args_type] def to_snake_case(camel_case: str): snake_case = re.sub(r"(?P[A-Z])", r"_\g", camel_case) return snake_case.lower().strip('_') - -mp1 = {'tinyint': ['ktint'], - 'smallint': ['ksint'], - 'integer': ['kint'], - 'bigint': ['kbint'], - 'largeint': ['klint'], - 'float': ['kfloat'], - 'double': ['kdbl'], - 'decimalv2': ['kdcmls1'], - 'char': ['kchrs1'], - 'varchar': ['kvchrs1'], - 'string': ['kstr'], - 'date': ['kdt'], - 'datetime': ['kdtm'], - 'datev2': ['kdtv2'], - 'datetimev2': ['kdtmv2s1'], - 'boolean': ['kbool'], - '': ['']} - -run('/Users/mochenhui/projects/doris/fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/scalar') +run(f'{DORIS_HOME}/fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/scalar') for k in sorted(mp): v = mp[k] args = '' @@ -82,6 +88,6 @@ def to_snake_case(camel_case: str): if flag == 1: print('// function ' + k + '(' + ", ".join(i[1:]) + ') is unsupported for the test suite.') continue - args = ", ".join([mp1[s][0] for s in list(i[1:])]) + args = ", ".join(generete_args(k, list(i[1:]))) print('sql "select ' + k + '(' + args + ') from fn_test order by ' + args + '"') diff --git a/regression-test/suites/nereids_function_p0/load.groovy b/regression-test/suites/nereids_function_p0/load.groovy index 3047e67ad22b7a..dfc8d8d32842cd 100644 --- a/regression-test/suites/nereids_function_p0/load.groovy +++ b/regression-test/suites/nereids_function_p0/load.groovy @@ -64,7 +64,9 @@ suite("load") { `kachr` array null, `kavchr` array null, `kastr` array null, - `kadcml` array null + `kadcml` array null, + `st_point_str` string null, + `st_point_vc` varchar(50) null ) engine=olap DISTRIBUTED BY HASH(`ktint`) BUCKETS 5 properties("replication_num" = "1") diff --git a/regression-test/suites/nereids_function_p0/scalar_function/R-W.groovy b/regression-test/suites/nereids_function_p0/scalar_function/R-W.groovy index 87f3af9798a3dc..fce073db99710f 100644 --- a/regression-test/suites/nereids_function_p0/scalar_function/R-W.groovy +++ b/regression-test/suites/nereids_function_p0/scalar_function/R-W.groovy @@ -25,7 +25,6 @@ suite("nereids_scalar_fn_4") { sql "select random(1000) from fn_test order by kbint" qt_sql "select regexp_extract(kvchrs1, kvchrs1, kbint) from fn_test order by kvchrs1, kvchrs1, kbint" qt_sql "select regexp_extract(kstr, kstr, kbint) from fn_test order by kstr, kstr, kbint" - // core // qt_sql "select regexp_extract_all(kvchrs1, kvchrs1) from fn_test order by kvchrs1, kvchrs1" // qt_sql "select regexp_extract_all(kstr, kstr) from fn_test order by kstr, kstr" qt_sql "select regexp_replace(kvchrs1, kvchrs1, kvchrs1) from fn_test order by kvchrs1, kvchrs1, kvchrs1" @@ -43,8 +42,8 @@ suite("nereids_scalar_fn_4") { qt_sql "select round_bankers(kdbl) from fn_test order by kdbl" qt_sql "select round_bankers(kdbl, 2) from fn_test order by kdbl, kint" // timeout - // qt_sql "select rpad(kvchrs1, kint, kvchrs1) from fn_test order by kvchrs1, kint, kvchrs1" - // qt_sql "select rpad(kstr, kint, kstr) from fn_test order by kstr, kint, kstr" + qt_sql "select rpad(kvchrs1, kint%1000, kvchrs1) from fn_test order by kvchrs1, kint, kvchrs1" + qt_sql "select rpad(kstr, kint%1000, kstr) from fn_test order by kstr, kint, kstr" qt_sql "select rtrim(kvchrs1) from fn_test order by kvchrs1" qt_sql "select rtrim(kstr) from fn_test order by kstr" sql "select running_difference(ktint) from fn_test order by ktint" @@ -94,11 +93,10 @@ suite("nereids_scalar_fn_4") { qt_sql "select second_floor(kdtmv2s1, kint, kdtmv2s1) from fn_test order by kdtmv2s1, kint, kdtmv2s1" // core // qt_sql "select second_floor(kdtv2, kint, kdtv2) from fn_test order by kdtv2, kint, kdtv2" - // cannot find function - // qt_sql "select seconds_add(kdtm, kint) from fn_test order by kdtm, kint" - // qt_sql "select seconds_add(kdtmv2s1, kint) from fn_test order by kdtmv2s1, kint" - // qt_sql "select seconds_add(kdt, kint) from fn_test order by kdt, kint" - // qt_sql "select seconds_add(kdtv2, kint) from fn_test order by kdtv2, kint" + qt_sql "select seconds_add(kdtm, kint) from fn_test order by kdtm, kint" + qt_sql "select seconds_add(kdtmv2s1, kint) from fn_test order by kdtmv2s1, kint" + qt_sql "select seconds_add(kdt, kint) from fn_test order by kdt, kint" + qt_sql "select seconds_add(kdtv2, kint) from fn_test order by kdtv2, kint" qt_sql "select seconds_diff(kdtm, kdtm) from fn_test order by kdtm, kdtm" qt_sql "select seconds_diff(kdtmv2s1, kdtmv2s1) from fn_test order by kdtmv2s1, kdtmv2s1" qt_sql "select seconds_diff(kdtv2, kdtmv2s1) from fn_test order by kdtv2, kdtmv2s1" @@ -108,11 +106,10 @@ suite("nereids_scalar_fn_4") { qt_sql "select seconds_diff(kdtm, kdtv2) from fn_test order by kdtm, kdtv2" qt_sql "select seconds_diff(kdtmv2s1, kdtm) from fn_test order by kdtmv2s1, kdtm" qt_sql "select seconds_diff(kdtm, kdtmv2s1) from fn_test order by kdtm, kdtmv2s1" - // cannot find function - // qt_sql "select seconds_sub(kdtm, kint) from fn_test order by kdtm, kint" - // qt_sql "select seconds_sub(kdtmv2s1, kint) from fn_test order by kdtmv2s1, kint" - // qt_sql "select seconds_sub(kdt, kint) from fn_test order by kdt, kint" - // qt_sql "select seconds_sub(kdtv2, kint) from fn_test order by kdtv2, kint" + qt_sql "select seconds_sub(kdtm, kint) from fn_test order by kdtm, kint" + qt_sql "select seconds_sub(kdtmv2s1, kint) from fn_test order by kdtmv2s1, kint" + qt_sql "select seconds_sub(kdt, kint) from fn_test order by kdt, kint" + qt_sql "select seconds_sub(kdtv2, kint) from fn_test order by kdtv2, kint" qt_sql "select sign(kdbl) from fn_test order by kdbl" qt_sql "select sin(kdbl) from fn_test order by kdbl" qt_sql "select sleep(0.1) from fn_test order by kint" @@ -122,62 +119,56 @@ suite("nereids_scalar_fn_4") { qt_sql "select sm3sum(kstr) from fn_test order by kstr" sql "select sm4_decrypt(kvchrs1, kvchrs1) from fn_test order by kvchrs1, kvchrs1" sql "select sm4_decrypt(kstr, kstr) from fn_test order by kstr, kstr" - // core - // sql "select sm4_decrypt(kvchrs1, kvchrs1, kvchrs1) from fn_test order by kvchrs1, kvchrs1, kvchrs1" + + sql "select sm4_decrypt(kvchrs1, kvchrs1, kvchrs1) from fn_test order by kvchrs1, kvchrs1, kvchrs1" sql "select sm4_decrypt(kstr, kstr, kstr) from fn_test order by kstr, kstr, kstr" - // cannot find function - // qt_sql "select sm4_decrypt(kvchrs1, kvchrs1, kvchrs1, kvchrs1) from fn_test order by kvchrs1, kvchrs1, kvchrs1, kvchrs1" - // qt_sql "select sm4_decrypt(kstr, kstr, kstr, kstr) from fn_test order by kstr, kstr, kstr, kstr" + qt_sql """ select sm4_decrypt(kvchrs1, kvchrs1, kvchrs1, "SM4_128_ECB") from fn_test order by kvchrs1, kvchrs1, kvchrs1, kvchrs1 """ + qt_sql """ select sm4_decrypt(kstr, kstr, kstr, "SM4_128_ECB") from fn_test order by kstr, kstr, kstr, kstr """ sql "select sm4_encrypt(kvchrs1, kvchrs1) from fn_test order by kvchrs1, kvchrs1" sql "select sm4_encrypt(kstr, kstr) from fn_test order by kstr, kstr" sql "select sm4_encrypt(kvchrs1, kvchrs1, kvchrs1) from fn_test order by kvchrs1, kvchrs1, kvchrs1" sql "select sm4_encrypt(kstr, kstr, kstr) from fn_test order by kstr, kstr, kstr" - // cannot find function - // qt_sql "select sm4_encrypt(kvchrs1, kvchrs1, kvchrs1, kvchrs1) from fn_test order by kvchrs1, kvchrs1, kvchrs1, kvchrs1" - // qt_sql "select sm4_encrypt(kstr, kstr, kstr, kstr) from fn_test order by kstr, kstr, kstr, kstr" + qt_sql """ select sm4_encrypt(kvchrs1, kvchrs1, kvchrs1, "SM4_128_ECB") from fn_test order by kvchrs1, kvchrs1, kvchrs1, kvchrs1""" + qt_sql """ select sm4_encrypt(kstr, kstr, kstr, "SM4_128_ECB") from fn_test order by kstr, kstr, kstr, kstr""" sql "select space(10) from fn_test order by kint" - // argument in index 2 must be constant but it is - // qt_sql "select split_part(kvchrs1, kvchrs1, 3) from fn_test order by kvchrs1, kvchrs1, kint" - // qt_sql "select split_part(kstr, kstr, 3) from fn_test order by kstr, kstr, kint" - // data out of double range - // qt_sql "select sqrt(kdbl) from fn_test order by kdbl" + qt_sql """ select split_part(kvchrs1, " ", 1) from fn_test order by kvchrs1, kvchrs1, kint""" + qt_sql """ select split_part(kstr, " ", 1) from fn_test order by kstr, kstr, kint""" + qt_sql "select sqrt(kdbl) from fn_test order by kdbl" // data out of geometry-style range - // qt_sql "select st_astext(kvchrs1) from fn_test order by kvchrs1" - // qt_sql "select st_astext(kstr) from fn_test order by kstr" - // qt_sql "select st_aswkt(kvchrs1) from fn_test order by kvchrs1" - // qt_sql "select st_aswkt(kstr) from fn_test order by kstr" - // qt_sql "select st_circle(kdbl, kdbl, kdbl) from fn_test order by kdbl, kdbl, kdbl" - // qt_sql "select st_contains(kvchrs1, kvchrs1) from fn_test order by kvchrs1, kvchrs1" - // qt_sql "select st_distance_sphere(kdbl, kdbl, kdbl, kdbl) from fn_test order by kdbl, kdbl, kdbl, kdbl" - // qt_sql "select st_geometryfromtext(kvchrs1) from fn_test order by kvchrs1" - // qt_sql "select st_geometryfromtext(kstr) from fn_test order by kstr" - // qt_sql "select st_geomfromtext(kvchrs1) from fn_test order by kvchrs1" - // qt_sql "select st_geomfromtext(kstr) from fn_test order by kstr" - // qt_sql "select st_linefromtext(kvchrs1) from fn_test order by kvchrs1" - // qt_sql "select st_linefromtext(kstr) from fn_test order by kstr" - // qt_sql "select st_linestringfromtext(kvchrs1) from fn_test order by kvchrs1" - // qt_sql "select st_linestringfromtext(kstr) from fn_test order by kstr" - // qt_sql "select st_point(kdbl, kdbl) from fn_test order by kdbl, kdbl" - // qt_sql "select st_polyfromtext(kvchrs1) from fn_test order by kvchrs1" - // qt_sql "select st_polyfromtext(kstr) from fn_test order by kstr" - // qt_sql "select st_polygon(kvchrs1) from fn_test order by kvchrs1" - // qt_sql "select st_polygon(kstr) from fn_test order by kstr" - // qt_sql "select st_polygonfromtext(kvchrs1) from fn_test order by kvchrs1" - // qt_sql "select st_polygonfromtext(kstr) from fn_test order by kstr" - // qt_sql "select st_x(kvchrs1) from fn_test order by kvchrs1" - // qt_sql "select st_x(kstr) from fn_test order by kstr" - // qt_sql "select st_y(kvchrs1) from fn_test order by kvchrs1" - // qt_sql "select st_y(kstr) from fn_test order by kstr" + qt_sql "select st_astext(st_point_vc) from fn_test order by st_point_vc" + qt_sql "select st_astext(st_point_str) from fn_test order by st_point_str" + qt_sql "select st_aswkt(st_point_vc) from fn_test order by st_point_vc" + qt_sql "select st_aswkt(st_point_str) from fn_test order by st_point_str" + qt_sql "select st_circle(kdbl, kdbl, kdbl) from fn_test order by kdbl, kdbl, kdbl" + qt_sql "select st_contains(st_point_vc, st_point_vc) from fn_test order by st_point_vc, st_point_vc" + qt_sql "select st_distance_sphere(kdbl, kdbl, kdbl, kdbl) from fn_test order by kdbl, kdbl, kdbl, kdbl" + qt_sql "select st_geometryfromtext(st_point_vc) from fn_test order by st_point_vc" + qt_sql "select st_geometryfromtext(st_point_str) from fn_test order by st_point_str" + qt_sql "select st_geomfromtext(st_point_vc) from fn_test order by st_point_vc" + qt_sql "select st_geomfromtext(st_point_str) from fn_test order by st_point_str" + qt_sql "select st_linefromtext(st_point_vc) from fn_test order by st_point_vc" + qt_sql "select st_linefromtext(st_point_str) from fn_test order by st_point_str" + qt_sql "select st_linestringfromtext(st_point_vc) from fn_test order by st_point_vc" + qt_sql "select st_linestringfromtext(st_point_str) from fn_test order by st_point_str" + qt_sql "select st_point(kdbl, kdbl) from fn_test order by kdbl, kdbl" + qt_sql "select st_polyfromtext(st_point_vc) from fn_test order by st_point_vc" + qt_sql "select st_polyfromtext(st_point_str) from fn_test order by st_point_str" + qt_sql "select st_polygon(st_point_vc) from fn_test order by st_point_vc" + qt_sql "select st_polygon(st_point_str) from fn_test order by st_point_str" + qt_sql "select st_polygonfromtext(st_point_vc) from fn_test order by st_point_vc" + qt_sql "select st_polygonfromtext(st_point_str) from fn_test order by st_point_str" + qt_sql "select st_x(st_point_vc) from fn_test order by st_point_vc" + qt_sql "select st_x(st_point_str) from fn_test order by st_point_str" + qt_sql "select st_y(st_point_vc) from fn_test order by st_point_vc" + qt_sql "select st_y(st_point_str) from fn_test order by st_point_str" qt_sql "select starts_with(kvchrs1, kvchrs1) from fn_test order by kvchrs1, kvchrs1" - // core - // qt_sql "select starts_with(kstr, kstr) from fn_test order by kstr, kstr" - // core - // qt_sql "select str_left(kvchrs1, kint) from fn_test order by kvchrs1, kint" - // qt_sql "select str_left(kstr, kint) from fn_test order by kstr, kint" - // qt_sql "select str_right(kvchrs1, kint) from fn_test order by kvchrs1, kint" - // qt_sql "select str_right(kstr, kint) from fn_test order by kstr, kint" - // qt_sql "select str_to_date(kvchrs1, kvchrs1) from fn_test order by kvchrs1, kvchrs1" - // qt_sql "select str_to_date(kstr, kstr) from fn_test order by kstr, kstr" + qt_sql "select starts_with(kstr, kstr) from fn_test order by kstr, kstr" + qt_sql "select strleft(kvchrs1, kint) from fn_test order by kvchrs1, kint" + qt_sql "select strleft(kstr, kint) from fn_test order by kstr, kint" + qt_sql "select strright(kvchrs1, kint) from fn_test order by kvchrs1, kint" + qt_sql "select strright(kstr, kint) from fn_test order by kstr, kint" + qt_sql "select str_to_date(kvchrs1, kvchrs1) from fn_test order by kvchrs1, kvchrs1" + qt_sql "select str_to_date(kstr, kstr) from fn_test order by kstr, kstr" // function sub_bitmap(bitmap, bigint, bigint) is unsupported for the test suite. qt_sql "select sub_replace(kvchrs1, kvchrs1, kint) from fn_test order by kvchrs1, kvchrs1, kint" qt_sql "select sub_replace(kstr, kstr, kint) from fn_test order by kstr, kstr, kint" @@ -187,31 +178,26 @@ suite("nereids_scalar_fn_4") { qt_sql "select substring(kstr, kint) from fn_test order by kstr, kint" qt_sql "select substring(kvchrs1, kint, kint) from fn_test order by kvchrs1, kint, kint" qt_sql "select substring(kstr, kint, kint) from fn_test order by kstr, kint, kint" - // argument index 2 must be constant but it is - // qt_sql "select substring_index(kvchrs1, kvchrs1, 2) from fn_test order by kvchrs1, kvchrs1, kint" - // qt_sql "select substring_index(kstr, kstr, 2) from fn_test order by kstr, kstr, kint" + qt_sql "select substring_index(kvchrs1, ' ', 2) from fn_test order by kvchrs1, kvchrs1, kint" + qt_sql "select substring_index(kstr, ' ', 2) from fn_test order by kstr, kstr, kint" qt_sql "select tan(kdbl) from fn_test order by kdbl" - // cannot find function - // qt_sql "select time_diff(kdtm, kdtm) from fn_test order by kdtm, kdtm" - // qt_sql "select time_diff(kdtmv2s1, kdtmv2s1) from fn_test order by kdtmv2s1, kdtmv2s1" - // qt_sql "select time_diff(kdtmv2s1, kdtv2) from fn_test order by kdtmv2s1, kdtv2" - // qt_sql "select time_diff(kdtv2, kdtmv2s1) from fn_test order by kdtv2, kdtmv2s1" - // qt_sql "select time_diff(kdtv2, kdtv2) from fn_test order by kdtv2, kdtv2" - // qt_sql "select time_diff(kdtmv2s1, kdtm) from fn_test order by kdtmv2s1, kdtm" - // qt_sql "select time_diff(kdtv2, kdtm) from fn_test order by kdtv2, kdtm" + qt_sql "select timediff(kdtm, kdtm) from fn_test order by kdtm, kdtm" + qt_sql "select timediff(kdtmv2s1, kdtmv2s1) from fn_test order by kdtmv2s1, kdtmv2s1" + qt_sql "select timediff(kdtmv2s1, kdtv2) from fn_test order by kdtmv2s1, kdtv2" + qt_sql "select timediff(kdtv2, kdtmv2s1) from fn_test order by kdtv2, kdtmv2s1" + qt_sql "select timediff(kdtv2, kdtv2) from fn_test order by kdtv2, kdtv2" + qt_sql "select timediff(kdtmv2s1, kdtm) from fn_test order by kdtmv2s1, kdtm" + qt_sql "select timediff(kdtv2, kdtm) from fn_test order by kdtv2, kdtm" qt_sql "select timestamp(kdtm) from fn_test order by kdtm" - // core - // qt_sql "select timestamp(kdtmv2s1) from fn_test order by kdtmv2s1" + qt_sql "select timestamp(kdtmv2s1) from fn_test order by kdtmv2s1" qt_sql "select to_base64(kstr) from fn_test order by kstr" qt_sql "select to_bitmap(kvchrs1) from fn_test order by kvchrs1" qt_sql "select to_bitmap(kstr) from fn_test order by kstr" - // core - // qt_sql "select to_bitmap_with_check(kvchrs1) from fn_test where kvchrs1 is not null order by kvchrs1" - // qt_sql "select to_bitmap_with_check(kstr) from fn_test where kstr is not null order by kstr" + qt_sql "select to_bitmap_with_check(kvchrs1) from fn_test where kvchrs1 is not null order by kvchrs1" + qt_sql "select to_bitmap_with_check(kstr) from fn_test where kstr is not null order by kstr" qt_sql "select to_date(kdtm) from fn_test order by kdtm" qt_sql "select to_date(kdtmv2s1) from fn_test order by kdtmv2s1" - // core - // qt_sql "select to_date_v2(kdtmv2s1) from fn_test order by kdtmv2s1" + qt_sql "select to_datev2(kdtmv2s1) from fn_test order by kdtmv2s1" qt_sql "select to_days(kdt) from fn_test order by kdt" qt_sql "select to_days(kdtv2) from fn_test order by kdtv2" qt_sql "select to_monday(kdtmv2s1) from fn_test order by kdtmv2s1" @@ -268,10 +254,9 @@ suite("nereids_scalar_fn_4") { qt_sql "select week_floor(kdtm, kint, kdtm) from fn_test order by kdtm, kint, kdtm" qt_sql "select week_floor(kdtmv2s1, kint, kdtmv2s1) from fn_test order by kdtmv2s1, kint, kdtmv2s1" qt_sql "select week_floor(kdtv2, kint, kdtv2) from fn_test order by kdtv2, kint, kdtv2" - // cannot find function - // qt_sql "select week_of_year(kdtm) from fn_test order by kdtm" - // qt_sql "select week_of_year(kdtmv2s1) from fn_test order by kdtmv2s1" - // qt_sql "select week_of_year(kdtv2) from fn_test order by kdtv2" + qt_sql "select weekofyear(kdtm) from fn_test order by kdtm" + qt_sql "select weekofyear(kdtmv2s1) from fn_test order by kdtmv2s1" + qt_sql "select weekofyear(kdtv2) from fn_test order by kdtv2" qt_sql "select weekday(kdtm) from fn_test order by kdtm" qt_sql "select weekday(kdtmv2s1) from fn_test order by kdtmv2s1" qt_sql "select weekday(kdtv2) from fn_test order by kdtv2"