branch-2.1: [fix](Nereids) use StringLikeLiteral as parameter type in constant folding #49413 (#49447)
Cherry-picked from #49413 Co-authored-by: morrySnow <zhangwenxin@selectdb.com>
This commit is contained in:
committed by
GitHub
parent
4a31fc4e09
commit
646f49fb93
@ -403,7 +403,7 @@ public class StringArithmetic {
|
||||
* Executable arithmetic functions ConcatWs
|
||||
*/
|
||||
@ExecFunction(name = "concat_ws")
|
||||
public static Expression concatWsVarcharVarchar(StringLikeLiteral first, VarcharLiteral... second) {
|
||||
public static Expression concatWsVarcharVarchar(StringLikeLiteral first, StringLikeLiteral... second) {
|
||||
StringBuilder sb = new StringBuilder();
|
||||
for (int i = 0; i < second.length - 1; i++) {
|
||||
sb.append(second[i].getValue());
|
||||
@ -467,7 +467,7 @@ public class StringArithmetic {
|
||||
* Executable arithmetic functions md5
|
||||
*/
|
||||
@ExecFunction(name = "md5sum")
|
||||
public static Expression md5Sum(VarcharLiteral... first) {
|
||||
public static Expression md5Sum(StringLikeLiteral... first) {
|
||||
try {
|
||||
// Step 1: Create a MessageDigest instance for MD5
|
||||
MessageDigest md = MessageDigest.getInstance("MD5");
|
||||
@ -609,7 +609,7 @@ public class StringArithmetic {
|
||||
* Executable arithmetic functions field
|
||||
*/
|
||||
@ExecFunction(name = "field")
|
||||
public static Expression fieldVarchar(StringLikeLiteral first, VarcharLiteral... second) {
|
||||
public static Expression fieldVarchar(StringLikeLiteral first, StringLikeLiteral... second) {
|
||||
return new IntegerLiteral(compareLiteral(first, second));
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user