diff --git a/fe/fe-common/src/main/java/org/apache/doris/catalog/ScalarType.java b/fe/fe-common/src/main/java/org/apache/doris/catalog/ScalarType.java index b4a81068b3f270..6f684471e56c6f 100644 --- a/fe/fe-common/src/main/java/org/apache/doris/catalog/ScalarType.java +++ b/fe/fe-common/src/main/java/org/apache/doris/catalog/ScalarType.java @@ -578,7 +578,7 @@ public static ScalarType createHllType() { public String toString() { if (type == PrimitiveType.CHAR) { if (isWildcardChar()) { - return "CHARACTER"; + return "CHARACTER(" + MAX_CHAR_LENGTH + ")"; } return "CHAR(" + len + ")"; } else if (type == PrimitiveType.DECIMALV2) { @@ -614,7 +614,7 @@ public String toSql(int depth) { switch (type) { case CHAR: if (isWildcardChar()) { - stringBuilder.append("CHARACTER"); + stringBuilder.append("CHARACTER").append("(").append(MAX_CHAR_LENGTH).append(")"); } else if (Strings.isNullOrEmpty(lenStr)) { stringBuilder.append("CHAR").append("(").append(len).append(")"); } else { diff --git a/fe/fe-core/src/test/java/org/apache/doris/catalog/CreateFunctionTest.java b/fe/fe-core/src/test/java/org/apache/doris/catalog/CreateFunctionTest.java index 7c9a45febaea3f..76f54eea9f63ad 100644 --- a/fe/fe-core/src/test/java/org/apache/doris/catalog/CreateFunctionTest.java +++ b/fe/fe-core/src/test/java/org/apache/doris/catalog/CreateFunctionTest.java @@ -285,7 +285,7 @@ public void testCreateGlobalFunction() throws Exception { testFunctionQuery(ctx, queryStr, true); queryStr = "select to_char(k1, 4) from db2.tbl1;"; - Assert.assertTrue(dorisAssert.query(queryStr).explainQuery().contains("CAST(`k1` AS CHARACTER)")); + Assert.assertTrue(dorisAssert.query(queryStr).explainQuery().contains("CAST(`k1` AS CHARACTER(255))")); } private void testFunctionQuery(ConnectContext ctx, String queryStr, Boolean isStringLiteral) throws Exception {