Hisoka-X commented on code in PR #9136:
URL: https://github.com/apache/seatunnel/pull/9136#discussion_r2041355794
##########
docs/en/transform-v2/sql-functions.md:
##########
@@ -917,11 +917,17 @@ CALL FROM_UNIXTIME(1672502400, 'yyyy-MM-dd
HH:mm:ss','UTC+6')
Converts a value to another data type.
-Supported data types: STRING | VARCHAR, INT | INTEGER, LONG | BIGINT, BYTE,
FLOAT, DOUBLE, DECIMAL(p,s), TIMESTAMP, DATE, TIME, BYTES
+Supported data types: STRING | VARCHAR, INT | INTEGER, LONG | BIGINT, BYTE,
FLOAT, DOUBLE, DECIMAL(p,s), TIMESTAMP, DATE, TIME, BYTES, BOOLEAN
Example:
+* CONVERT(NAME AS INT)
Review Comment:
```suggestion
* CAST(NAME AS INT)
```
I believe this is a mistake.
##########
seatunnel-transforms-v2/src/main/java/org/apache/seatunnel/transform/sql/zeta/ZetaSQLType.java:
##########
@@ -113,6 +115,12 @@ public SeaTunnelDataType<?> getExpressionType(Expression
expression) {
}
if (expression instanceof Column) {
Column columnExp = (Column) expression;
+ Node node = columnExp.getASTNode().jjtGetParent();
+ if (("true".equalsIgnoreCase(columnExp.getColumnName())
+ ||
"false".equalsIgnoreCase(columnExp.getColumnName()))
+ &&
("CaseWhenExpression".equalsIgnoreCase(node.toString()))) {
+ return BasicType.BOOLEAN_TYPE;
+ }
Review Comment:
ditto
##########
seatunnel-transforms-v2/src/main/java/org/apache/seatunnel/transform/sql/zeta/ZetaSQLFunction.java:
##########
@@ -263,6 +264,12 @@ public Object computeForValue(Expression expression,
Object[] inputFields) {
if (expression instanceof Column) {
Column columnExp = (Column) expression;
String columnName = columnExp.getColumnName();
+ Node node = columnExp.getASTNode().jjtGetParent();
+ if (("true".equalsIgnoreCase(columnExp.getColumnName())
+ ||
"false".equalsIgnoreCase(columnExp.getColumnName()))
+ &&
("CaseWhenExpression".equalsIgnoreCase(node.toString()))) {
+ return Boolean.parseBoolean(columnExp.getColumnName());
+ }
Review Comment:
Why not directly return `StringValue` in here? Then parse it to boolean in
cast method.
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: [email protected]
For queries about this service, please contact Infrastructure at:
[email protected]