eldenmoon commented on code in PR #15491:
URL: https://github.com/apache/doris/pull/15491#discussion_r1071706562


##########
fe/fe-core/src/main/java/org/apache/doris/analysis/LiteralExpr.java:
##########
@@ -262,4 +262,106 @@ public boolean isNullable() {
     public void finalizeImplForNereids() throws AnalysisException {
 
     }
+
+    // Parse from binary data, the format follows mysql binary protocal
+    // see 
https://dev.mysql.com/doc/dev/mysql-server/latest/page_protocol_binary_resultset.html.
+    // Return next offset
+    public void setupParamFromBinary(ByteBuffer data) {
+        Preconditions.checkState(false,
+                "should implement this in derived class. " + 
this.type.toSql());
+    }
+
+    public static LiteralExpr getLiteralByMysqlType(int mysqlType) throws 
AnalysisException {
+        switch (mysqlType) {
+            // MYSQL_TYPE_TINY
+            case 1:
+                return LiteralExpr.create("0", Type.TINYINT);
+            // MYSQL_TYPE_SHORT
+            case 2:
+                return LiteralExpr.create("0", Type.SMALLINT);
+            // MYSQL_TYPE_LONG
+            case 3:
+                return LiteralExpr.create("0", Type.INT);
+            // MYSQL_TYPE_LONGLONG
+            case 8:
+                return LiteralExpr.create("0", Type.BIGINT);
+            // MYSQL_TYPE_FLOAT
+            case 4:
+                return LiteralExpr.create("0", Type.FLOAT);
+            // MYSQL_TYPE_DOUBLE
+            case 5:
+                return LiteralExpr.create("0", Type.DOUBLE);
+            // MYSQL_TYPE_DECIMAL
+            case 0:
+            // MYSQL_TYPE_NEWDECIMAL
+            case 246:
+                return LiteralExpr.create("0", Type.DECIMAL32);
+            // MYSQL_TYPE_TIME
+            case 11:
+                return LiteralExpr.create("", Type.TIME);
+            // MYSQL_TYPE_DATE
+            case 10:
+                return LiteralExpr.create("1970-01-01", Type.DATE);

Review Comment:
   DATE or DATEV2  are all MYSQL_TYPE_DATE in mysql protocol



-- 
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: commits-unsubscr...@doris.apache.org

For queries about this service, please contact Infrastructure at:
us...@infra.apache.org


---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscr...@doris.apache.org
For additional commands, e-mail: commits-h...@doris.apache.org

Reply via email to