This is an automated email from the ASF dual-hosted git repository.

zhangliang pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/shardingsphere.git


The following commit(s) were added to refs/heads/master by this push:
     new 49a46117e07 Support parsing Doris SHOW DATA (TYPES) syntax (#38236)
49a46117e07 is described below

commit 49a46117e072d81fcbf707308c0f2d5e9976b630
Author: cxy <[email protected]>
AuthorDate: Fri Feb 27 17:29:54 2026 +0800

    Support parsing Doris SHOW DATA (TYPES) syntax (#38236)
---
 .../core/database/visitor/SQLVisitorRule.java      |  4 ++
 .../src/main/antlr4/imports/doris/DALStatement.g4  | 10 ++++
 .../statement/type/DorisDALStatementVisitor.java   | 24 +++++++++
 .../doris/dal/DorisShowDataStatement.java          | 61 ++++++++++++++++++++++
 .../doris/dal/DorisShowDataTypesStatement.java     | 31 +++++++++++
 .../dal/dialect/doris/DorisDALStatementAssert.java | 10 ++++
 .../doris/type/DorisShowDataStatementAssert.java   | 58 ++++++++++++++++++++
 .../type/DorisShowDataTypesStatementAssert.java    | 41 +++++++++++++++
 .../cases/parser/jaxb/RootSQLParserTestCases.java  |  8 +++
 .../doris/DorisShowDataStatementTestCase.java      | 40 ++++++++++++++
 .../doris/DorisShowDataTypesStatementTestCase.java | 26 +++++++++
 .../main/resources/case/dal/show-data-types.xml    | 21 ++++++++
 .../src/main/resources/case/dal/show-data.xml      | 45 ++++++++++++++++
 .../sql/supported/dal/show-data-types.xml          | 21 ++++++++
 .../main/resources/sql/supported/dal/show-data.xml | 25 +++++++++
 15 files changed, 425 insertions(+)

diff --git 
a/parser/sql/engine/core/src/main/java/org/apache/shardingsphere/sql/parser/engine/core/database/visitor/SQLVisitorRule.java
 
b/parser/sql/engine/core/src/main/java/org/apache/shardingsphere/sql/parser/engine/core/database/visitor/SQLVisitorRule.java
index 0572ee66864..8fa65d270ec 100644
--- 
a/parser/sql/engine/core/src/main/java/org/apache/shardingsphere/sql/parser/engine/core/database/visitor/SQLVisitorRule.java
+++ 
b/parser/sql/engine/core/src/main/java/org/apache/shardingsphere/sql/parser/engine/core/database/visitor/SQLVisitorRule.java
@@ -417,6 +417,10 @@ public enum SQLVisitorRule {
     
     SHOW_BUILD_INDEX("ShowBuildIndex", SQLStatementType.DAL),
     
+    SHOW_DATA("ShowData", SQLStatementType.DAL),
+    
+    SHOW_DATA_TYPES("ShowDataTypes", SQLStatementType.DAL),
+    
     ALTER_SQL_BLOCK_RULE("AlterSqlBlockRule", SQLStatementType.DAL),
     
     DROP_SQL_BLOCK_RULE("DropSqlBlockRule", SQLStatementType.DAL),
diff --git 
a/parser/sql/engine/dialect/doris/src/main/antlr4/imports/doris/DALStatement.g4 
b/parser/sql/engine/dialect/doris/src/main/antlr4/imports/doris/DALStatement.g4
index 1ea447da784..9d3440cdee0 100644
--- 
a/parser/sql/engine/dialect/doris/src/main/antlr4/imports/doris/DALStatement.g4
+++ 
b/parser/sql/engine/dialect/doris/src/main/antlr4/imports/doris/DALStatement.g4
@@ -287,6 +287,14 @@ showCharset
     : SHOW CHARSET
     ;
 
+showDataTypes
+    : SHOW DATA TYPES
+    ;
+
+showData
+    : SHOW DATA (FROM tableName)? orderByClause?
+    ;
+
 setCharacter
     : SET (CHARACTER SET | CHARSET) (charsetName | DEFAULT)
     ;
@@ -836,4 +844,6 @@ show
     | showRoutineLoad
     | showProc
     | showSyncJob
+    | showDataTypes
+    | showData
     ;
diff --git 
a/parser/sql/engine/dialect/doris/src/main/java/org/apache/shardingsphere/sql/parser/engine/doris/visitor/statement/type/DorisDALStatementVisitor.java
 
b/parser/sql/engine/dialect/doris/src/main/java/org/apache/shardingsphere/sql/parser/engine/doris/visitor/statement/type/DorisDALStatementVisitor.java
index 38e41340752..63275446874 100644
--- 
a/parser/sql/engine/dialect/doris/src/main/java/org/apache/shardingsphere/sql/parser/engine/doris/visitor/statement/type/DorisDALStatementVisitor.java
+++ 
b/parser/sql/engine/dialect/doris/src/main/java/org/apache/shardingsphere/sql/parser/engine/doris/visitor/statement/type/DorisDALStatementVisitor.java
@@ -147,6 +147,8 @@ import 
org.apache.shardingsphere.sql.parser.autogen.DorisStatementParser.DorisAl
 import 
org.apache.shardingsphere.sql.parser.autogen.DorisStatementParser.ShowQueryStatsContext;
 import 
org.apache.shardingsphere.sql.parser.autogen.DorisStatementParser.ShowProcContext;
 import 
org.apache.shardingsphere.sql.parser.autogen.DorisStatementParser.ShowSyncJobContext;
+import 
org.apache.shardingsphere.sql.parser.autogen.DorisStatementParser.ShowDataTypesContext;
+import 
org.apache.shardingsphere.sql.parser.autogen.DorisStatementParser.ShowDataContext;
 import 
org.apache.shardingsphere.sql.parser.autogen.DorisStatementParser.AlterSqlBlockRuleContext;
 import 
org.apache.shardingsphere.sql.parser.autogen.DorisStatementParser.DropSqlBlockRuleContext;
 import 
org.apache.shardingsphere.sql.parser.autogen.DorisStatementParser.ShowSqlBlockRuleContext;
@@ -216,6 +218,8 @@ import 
org.apache.shardingsphere.sql.parser.statement.doris.dal.DorisDropSqlBloc
 import 
org.apache.shardingsphere.sql.parser.statement.doris.dal.DorisShowFunctionsStatement;
 import 
org.apache.shardingsphere.sql.parser.statement.doris.dal.DorisShowProcStatement;
 import 
org.apache.shardingsphere.sql.parser.statement.doris.dal.DorisShowSyncJobStatement;
+import 
org.apache.shardingsphere.sql.parser.statement.doris.dal.DorisShowDataTypesStatement;
+import 
org.apache.shardingsphere.sql.parser.statement.doris.dal.DorisShowDataStatement;
 import 
org.apache.shardingsphere.sql.parser.statement.doris.dal.DorisShowSqlBlockRuleStatement;
 import 
org.apache.shardingsphere.sql.parser.statement.doris.dal.DorisShowRoutineLoadTaskStatement;
 import 
org.apache.shardingsphere.sql.parser.statement.doris.dal.DorisShowRoutineLoadStatement;
@@ -1403,4 +1407,24 @@ public final class DorisDALStatementVisitor extends 
DorisStatementVisitor implem
         result.addParameterMarkers(getParameterMarkerSegments());
         return result;
     }
+    
+    @Override
+    public ASTNode visitShowDataTypes(final ShowDataTypesContext ctx) {
+        DorisShowDataTypesStatement result = new 
DorisShowDataTypesStatement(getDatabaseType());
+        result.addParameterMarkers(getParameterMarkerSegments());
+        return result;
+    }
+    
+    @Override
+    public ASTNode visitShowData(final ShowDataContext ctx) {
+        DorisShowDataStatement result = new 
DorisShowDataStatement(getDatabaseType());
+        if (null != ctx.tableName()) {
+            result.setTable((SimpleTableSegment) visit(ctx.tableName()));
+        }
+        if (null != ctx.orderByClause()) {
+            result.setOrderBy((OrderBySegment) visit(ctx.orderByClause()));
+        }
+        result.addParameterMarkers(getParameterMarkerSegments());
+        return result;
+    }
 }
diff --git 
a/parser/sql/statement/dialect/doris/src/main/java/org/apache/shardingsphere/sql/parser/statement/doris/dal/DorisShowDataStatement.java
 
b/parser/sql/statement/dialect/doris/src/main/java/org/apache/shardingsphere/sql/parser/statement/doris/dal/DorisShowDataStatement.java
new file mode 100644
index 00000000000..edcff2ddd6f
--- /dev/null
+++ 
b/parser/sql/statement/dialect/doris/src/main/java/org/apache/shardingsphere/sql/parser/statement/doris/dal/DorisShowDataStatement.java
@@ -0,0 +1,61 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements.  See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License.  You may obtain a copy of the License at
+ *
+ *     http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package org.apache.shardingsphere.sql.parser.statement.doris.dal;
+
+import lombok.Getter;
+import lombok.Setter;
+import org.apache.shardingsphere.database.connector.core.type.DatabaseType;
+import 
org.apache.shardingsphere.sql.parser.statement.core.segment.dml.order.OrderBySegment;
+import 
org.apache.shardingsphere.sql.parser.statement.core.segment.generic.table.SimpleTableSegment;
+import 
org.apache.shardingsphere.sql.parser.statement.core.statement.type.dal.DALStatement;
+
+import java.util.Optional;
+
+/**
+ * Show data statement for Doris.
+ */
+@Getter
+@Setter
+public final class DorisShowDataStatement extends DALStatement {
+    
+    private SimpleTableSegment table;
+    
+    private OrderBySegment orderBy;
+    
+    public DorisShowDataStatement(final DatabaseType databaseType) {
+        super(databaseType);
+    }
+    
+    /**
+     * Get table.
+     *
+     * @return table
+     */
+    public Optional<SimpleTableSegment> getTable() {
+        return Optional.ofNullable(table);
+    }
+    
+    /**
+     * Get order by.
+     *
+     * @return order by
+     */
+    public Optional<OrderBySegment> getOrderBy() {
+        return Optional.ofNullable(orderBy);
+    }
+}
diff --git 
a/parser/sql/statement/dialect/doris/src/main/java/org/apache/shardingsphere/sql/parser/statement/doris/dal/DorisShowDataTypesStatement.java
 
b/parser/sql/statement/dialect/doris/src/main/java/org/apache/shardingsphere/sql/parser/statement/doris/dal/DorisShowDataTypesStatement.java
new file mode 100644
index 00000000000..dc2db50d0cc
--- /dev/null
+++ 
b/parser/sql/statement/dialect/doris/src/main/java/org/apache/shardingsphere/sql/parser/statement/doris/dal/DorisShowDataTypesStatement.java
@@ -0,0 +1,31 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements.  See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License.  You may obtain a copy of the License at
+ *
+ *     http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package org.apache.shardingsphere.sql.parser.statement.doris.dal;
+
+import org.apache.shardingsphere.database.connector.core.type.DatabaseType;
+import 
org.apache.shardingsphere.sql.parser.statement.core.statement.type.dal.DALStatement;
+
+/**
+ * Show data types statement for Doris.
+ */
+public final class DorisShowDataTypesStatement extends DALStatement {
+    
+    public DorisShowDataTypesStatement(final DatabaseType databaseType) {
+        super(databaseType);
+    }
+}
diff --git 
a/test/it/parser/src/main/java/org/apache/shardingsphere/test/it/sql/parser/internal/asserts/statement/dal/dialect/doris/DorisDALStatementAssert.java
 
b/test/it/parser/src/main/java/org/apache/shardingsphere/test/it/sql/parser/internal/asserts/statement/dal/dialect/doris/DorisDALStatementAssert.java
index 93482afab53..0922a75e8eb 100644
--- 
a/test/it/parser/src/main/java/org/apache/shardingsphere/test/it/sql/parser/internal/asserts/statement/dal/dialect/doris/DorisDALStatementAssert.java
+++ 
b/test/it/parser/src/main/java/org/apache/shardingsphere/test/it/sql/parser/internal/asserts/statement/dal/dialect/doris/DorisDALStatementAssert.java
@@ -28,6 +28,8 @@ import 
org.apache.shardingsphere.sql.parser.statement.doris.dal.DorisCreateRepos
 import 
org.apache.shardingsphere.sql.parser.statement.doris.dal.DorisDescFunctionStatement;
 import 
org.apache.shardingsphere.sql.parser.statement.doris.dal.DorisDropRepositoryStatement;
 import 
org.apache.shardingsphere.sql.parser.statement.doris.dal.DorisShowFunctionsStatement;
+import 
org.apache.shardingsphere.sql.parser.statement.doris.dal.DorisShowDataStatement;
+import 
org.apache.shardingsphere.sql.parser.statement.doris.dal.DorisShowDataTypesStatement;
 import 
org.apache.shardingsphere.sql.parser.statement.doris.dal.DorisShowProcStatement;
 import 
org.apache.shardingsphere.sql.parser.statement.doris.dal.DorisShowCreateRoutineLoadStatement;
 import 
org.apache.shardingsphere.sql.parser.statement.doris.dal.DorisShowSyncJobStatement;
@@ -41,6 +43,8 @@ import 
org.apache.shardingsphere.test.it.sql.parser.internal.asserts.statement.d
 import 
org.apache.shardingsphere.test.it.sql.parser.internal.asserts.statement.dal.dialect.doris.type.DorisDescFunctionStatementAssert;
 import 
org.apache.shardingsphere.test.it.sql.parser.internal.asserts.statement.dal.dialect.doris.type.DorisDropRepositoryStatementAssert;
 import 
org.apache.shardingsphere.test.it.sql.parser.internal.asserts.statement.dal.dialect.doris.type.DorisShowFunctionsStatementAssert;
+import 
org.apache.shardingsphere.test.it.sql.parser.internal.asserts.statement.dal.dialect.doris.type.DorisShowDataStatementAssert;
+import 
org.apache.shardingsphere.test.it.sql.parser.internal.asserts.statement.dal.dialect.doris.type.DorisShowDataTypesStatementAssert;
 import 
org.apache.shardingsphere.test.it.sql.parser.internal.asserts.statement.dal.dialect.doris.type.DorisShowProcStatementAssert;
 import 
org.apache.shardingsphere.test.it.sql.parser.internal.asserts.statement.dal.dialect.doris.type.DorisShowCreateRoutineLoadStatementAssert;
 import 
org.apache.shardingsphere.test.it.sql.parser.internal.asserts.statement.dal.dialect.doris.type.DorisShowQueryStatsStatementAssert;
@@ -55,6 +59,8 @@ import 
org.apache.shardingsphere.test.it.sql.parser.internal.cases.parser.jaxb.s
 import 
org.apache.shardingsphere.test.it.sql.parser.internal.cases.parser.jaxb.statement.dal.dialect.doris.DorisDescFunctionStatementTestCase;
 import 
org.apache.shardingsphere.test.it.sql.parser.internal.cases.parser.jaxb.statement.dal.dialect.doris.DorisDropRepositoryStatementTestCase;
 import 
org.apache.shardingsphere.test.it.sql.parser.internal.cases.parser.jaxb.statement.dal.dialect.doris.DorisShowFunctionsStatementTestCase;
+import 
org.apache.shardingsphere.test.it.sql.parser.internal.cases.parser.jaxb.statement.dal.dialect.doris.DorisShowDataStatementTestCase;
+import 
org.apache.shardingsphere.test.it.sql.parser.internal.cases.parser.jaxb.statement.dal.dialect.doris.DorisShowDataTypesStatementTestCase;
 import 
org.apache.shardingsphere.test.it.sql.parser.internal.cases.parser.jaxb.statement.dal.dialect.doris.DorisShowProcStatementTestCase;
 import 
org.apache.shardingsphere.test.it.sql.parser.internal.cases.parser.jaxb.statement.dal.dialect.doris.DorisShowCreateRoutineLoadStatementTestCase;
 import 
org.apache.shardingsphere.test.it.sql.parser.internal.cases.parser.jaxb.statement.dal.dialect.doris.DorisShowSyncJobStatementTestCase;
@@ -102,6 +108,10 @@ public final class DorisDALStatementAssert {
             DorisShowCreateRoutineLoadStatementAssert.assertIs(assertContext, 
(DorisShowCreateRoutineLoadStatement) actual, 
(DorisShowCreateRoutineLoadStatementTestCase) expected);
         } else if (actual instanceof DorisShowSyncJobStatement) {
             DorisShowSyncJobStatementAssert.assertIs(assertContext, 
(DorisShowSyncJobStatement) actual, (DorisShowSyncJobStatementTestCase) 
expected);
+        } else if (actual instanceof DorisShowDataTypesStatement) {
+            DorisShowDataTypesStatementAssert.assertIs(assertContext, 
(DorisShowDataTypesStatement) actual, (DorisShowDataTypesStatementTestCase) 
expected);
+        } else if (actual instanceof DorisShowDataStatement) {
+            DorisShowDataStatementAssert.assertIs(assertContext, 
(DorisShowDataStatement) actual, (DorisShowDataStatementTestCase) expected);
         }
     }
 }
diff --git 
a/test/it/parser/src/main/java/org/apache/shardingsphere/test/it/sql/parser/internal/asserts/statement/dal/dialect/doris/type/DorisShowDataStatementAssert.java
 
b/test/it/parser/src/main/java/org/apache/shardingsphere/test/it/sql/parser/internal/asserts/statement/dal/dialect/doris/type/DorisShowDataStatementAssert.java
new file mode 100644
index 00000000000..b8c5945720a
--- /dev/null
+++ 
b/test/it/parser/src/main/java/org/apache/shardingsphere/test/it/sql/parser/internal/asserts/statement/dal/dialect/doris/type/DorisShowDataStatementAssert.java
@@ -0,0 +1,58 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements.  See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License.  You may obtain a copy of the License at
+ *
+ *     http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package 
org.apache.shardingsphere.test.it.sql.parser.internal.asserts.statement.dal.dialect.doris.type;
+
+import lombok.AccessLevel;
+import lombok.NoArgsConstructor;
+import 
org.apache.shardingsphere.sql.parser.statement.doris.dal.DorisShowDataStatement;
+import 
org.apache.shardingsphere.test.it.sql.parser.internal.asserts.SQLCaseAssertContext;
+import 
org.apache.shardingsphere.test.it.sql.parser.internal.asserts.segment.orderby.OrderByClauseAssert;
+import 
org.apache.shardingsphere.test.it.sql.parser.internal.asserts.segment.table.TableAssert;
+import 
org.apache.shardingsphere.test.it.sql.parser.internal.cases.parser.jaxb.statement.dal.dialect.doris.DorisShowDataStatementTestCase;
+
+import static org.junit.jupiter.api.Assertions.assertNotNull;
+import static org.junit.jupiter.api.Assertions.assertNull;
+
+/**
+ * Show data statement assert for Doris.
+ */
+@NoArgsConstructor(access = AccessLevel.PRIVATE)
+public final class DorisShowDataStatementAssert {
+    
+    /**
+     * Assert show data statement is correct with expected parser result.
+     *
+     * @param assertContext assert context
+     * @param actual actual show data statement
+     * @param expected expected show data statement test case
+     */
+    public static void assertIs(final SQLCaseAssertContext assertContext, 
final DorisShowDataStatement actual, final DorisShowDataStatementTestCase 
expected) {
+        if (null != expected.getTable()) {
+            assertNotNull(actual.getTable().orElse(null), 
assertContext.getText("Actual table should exist."));
+            TableAssert.assertIs(assertContext, actual.getTable().get(), 
expected.getTable());
+        } else {
+            assertNull(actual.getTable().orElse(null), 
assertContext.getText("Actual table should not exist."));
+        }
+        if (null != expected.getOrderBy()) {
+            assertNotNull(actual.getOrderBy().orElse(null), 
assertContext.getText("Actual order by segment should exist."));
+            OrderByClauseAssert.assertIs(assertContext, 
actual.getOrderBy().get(), expected.getOrderBy());
+        } else {
+            assertNull(actual.getOrderBy().orElse(null), 
assertContext.getText("Actual order by segment should not exist."));
+        }
+    }
+}
diff --git 
a/test/it/parser/src/main/java/org/apache/shardingsphere/test/it/sql/parser/internal/asserts/statement/dal/dialect/doris/type/DorisShowDataTypesStatementAssert.java
 
b/test/it/parser/src/main/java/org/apache/shardingsphere/test/it/sql/parser/internal/asserts/statement/dal/dialect/doris/type/DorisShowDataTypesStatementAssert.java
new file mode 100644
index 00000000000..47373556bb1
--- /dev/null
+++ 
b/test/it/parser/src/main/java/org/apache/shardingsphere/test/it/sql/parser/internal/asserts/statement/dal/dialect/doris/type/DorisShowDataTypesStatementAssert.java
@@ -0,0 +1,41 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements.  See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License.  You may obtain a copy of the License at
+ *
+ *     http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package 
org.apache.shardingsphere.test.it.sql.parser.internal.asserts.statement.dal.dialect.doris.type;
+
+import lombok.AccessLevel;
+import lombok.NoArgsConstructor;
+import 
org.apache.shardingsphere.sql.parser.statement.doris.dal.DorisShowDataTypesStatement;
+import 
org.apache.shardingsphere.test.it.sql.parser.internal.asserts.SQLCaseAssertContext;
+import 
org.apache.shardingsphere.test.it.sql.parser.internal.cases.parser.jaxb.statement.dal.dialect.doris.DorisShowDataTypesStatementTestCase;
+
+/**
+ * Show data types statement assert for Doris.
+ */
+@NoArgsConstructor(access = AccessLevel.PRIVATE)
+public final class DorisShowDataTypesStatementAssert {
+    
+    /**
+     * Assert show data types statement is correct with expected parser result.
+     *
+     * @param assertContext assert context
+     * @param actual actual show data types statement
+     * @param expected expected show data types statement test case
+     */
+    public static void assertIs(final SQLCaseAssertContext assertContext, 
final DorisShowDataTypesStatement actual, final 
DorisShowDataTypesStatementTestCase expected) {
+    }
+}
diff --git 
a/test/it/parser/src/main/java/org/apache/shardingsphere/test/it/sql/parser/internal/cases/parser/jaxb/RootSQLParserTestCases.java
 
b/test/it/parser/src/main/java/org/apache/shardingsphere/test/it/sql/parser/internal/cases/parser/jaxb/RootSQLParserTestCases.java
index 175fb9d130e..0d7165aaec1 100644
--- 
a/test/it/parser/src/main/java/org/apache/shardingsphere/test/it/sql/parser/internal/cases/parser/jaxb/RootSQLParserTestCases.java
+++ 
b/test/it/parser/src/main/java/org/apache/shardingsphere/test/it/sql/parser/internal/cases/parser/jaxb/RootSQLParserTestCases.java
@@ -39,6 +39,8 @@ import 
org.apache.shardingsphere.test.it.sql.parser.internal.cases.parser.jaxb.s
 import 
org.apache.shardingsphere.test.it.sql.parser.internal.cases.parser.jaxb.statement.dal.dialect.doris.DorisShowCreateRoutineLoadStatementTestCase;
 import 
org.apache.shardingsphere.test.it.sql.parser.internal.cases.parser.jaxb.statement.dml.dialect.doris.DorisStopRoutineLoadStatementTestCase;
 import 
org.apache.shardingsphere.test.it.sql.parser.internal.cases.parser.jaxb.statement.dal.dialect.doris.DorisShowProcStatementTestCase;
+import 
org.apache.shardingsphere.test.it.sql.parser.internal.cases.parser.jaxb.statement.dal.dialect.doris.DorisShowDataTypesStatementTestCase;
+import 
org.apache.shardingsphere.test.it.sql.parser.internal.cases.parser.jaxb.statement.dal.dialect.doris.DorisShowDataStatementTestCase;
 import 
org.apache.shardingsphere.test.it.sql.parser.internal.cases.parser.jaxb.statement.dal.dialect.doris.DorisShowSyncJobStatementTestCase;
 import 
org.apache.shardingsphere.test.it.sql.parser.internal.cases.parser.jaxb.statement.dal.dialect.doris.DorisShowSqlBlockRuleStatementTestCase;
 import 
org.apache.shardingsphere.test.it.sql.parser.internal.cases.parser.jaxb.statement.dal.dialect.doris.DorisShowRoutineLoadTaskStatementTestCase;
@@ -609,6 +611,12 @@ public final class RootSQLParserTestCases {
     @XmlElement(name = "doris-show-proc")
     private final List<DorisShowProcStatementTestCase> dorisShowProcTestCases 
= new LinkedList<>();
     
+    @XmlElement(name = "doris-show-data-types")
+    private final List<DorisShowDataTypesStatementTestCase> 
dorisShowDataTypesTestCases = new LinkedList<>();
+    
+    @XmlElement(name = "doris-show-data")
+    private final List<DorisShowDataStatementTestCase> dorisShowDataTestCases 
= new LinkedList<>();
+    
     @XmlElement(name = "build-index")
     private final List<BuildIndexStatementTestCase> buildIndexTestCases = new 
LinkedList<>();
     
diff --git 
a/test/it/parser/src/main/java/org/apache/shardingsphere/test/it/sql/parser/internal/cases/parser/jaxb/statement/dal/dialect/doris/DorisShowDataStatementTestCase.java
 
b/test/it/parser/src/main/java/org/apache/shardingsphere/test/it/sql/parser/internal/cases/parser/jaxb/statement/dal/dialect/doris/DorisShowDataStatementTestCase.java
new file mode 100644
index 00000000000..edbfaef2700
--- /dev/null
+++ 
b/test/it/parser/src/main/java/org/apache/shardingsphere/test/it/sql/parser/internal/cases/parser/jaxb/statement/dal/dialect/doris/DorisShowDataStatementTestCase.java
@@ -0,0 +1,40 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements.  See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License.  You may obtain a copy of the License at
+ *
+ *     http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package 
org.apache.shardingsphere.test.it.sql.parser.internal.cases.parser.jaxb.statement.dal.dialect.doris;
+
+import lombok.Getter;
+import lombok.Setter;
+import 
org.apache.shardingsphere.test.it.sql.parser.internal.cases.parser.jaxb.SQLParserTestCase;
+import 
org.apache.shardingsphere.test.it.sql.parser.internal.cases.parser.jaxb.segment.impl.orderby.ExpectedOrderByClause;
+import 
org.apache.shardingsphere.test.it.sql.parser.internal.cases.parser.jaxb.segment.impl.table.ExpectedSimpleTable;
+
+import javax.xml.bind.annotation.XmlElement;
+
+/**
+ * Show data statement test case for Doris.
+ */
+@Getter
+@Setter
+public final class DorisShowDataStatementTestCase extends SQLParserTestCase {
+    
+    @XmlElement
+    private ExpectedSimpleTable table;
+    
+    @XmlElement(name = "order-by")
+    private ExpectedOrderByClause orderBy;
+}
diff --git 
a/test/it/parser/src/main/java/org/apache/shardingsphere/test/it/sql/parser/internal/cases/parser/jaxb/statement/dal/dialect/doris/DorisShowDataTypesStatementTestCase.java
 
b/test/it/parser/src/main/java/org/apache/shardingsphere/test/it/sql/parser/internal/cases/parser/jaxb/statement/dal/dialect/doris/DorisShowDataTypesStatementTestCase.java
new file mode 100644
index 00000000000..43dd20ed2fd
--- /dev/null
+++ 
b/test/it/parser/src/main/java/org/apache/shardingsphere/test/it/sql/parser/internal/cases/parser/jaxb/statement/dal/dialect/doris/DorisShowDataTypesStatementTestCase.java
@@ -0,0 +1,26 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements.  See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License.  You may obtain a copy of the License at
+ *
+ *     http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package 
org.apache.shardingsphere.test.it.sql.parser.internal.cases.parser.jaxb.statement.dal.dialect.doris;
+
+import 
org.apache.shardingsphere.test.it.sql.parser.internal.cases.parser.jaxb.SQLParserTestCase;
+
+/**
+ * Show data types statement test case for Doris.
+ */
+public final class DorisShowDataTypesStatementTestCase extends 
SQLParserTestCase {
+}
diff --git a/test/it/parser/src/main/resources/case/dal/show-data-types.xml 
b/test/it/parser/src/main/resources/case/dal/show-data-types.xml
new file mode 100644
index 00000000000..37633799037
--- /dev/null
+++ b/test/it/parser/src/main/resources/case/dal/show-data-types.xml
@@ -0,0 +1,21 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+  ~ Licensed to the Apache Software Foundation (ASF) under one or more
+  ~ contributor license agreements.  See the NOTICE file distributed with
+  ~ this work for additional information regarding copyright ownership.
+  ~ The ASF licenses this file to You under the Apache License, Version 2.0
+  ~ (the "License"); you may not use this file except in compliance with
+  ~ the License.  You may obtain a copy of the License at
+  ~
+  ~     http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License.
+  -->
+
+<sql-parser-test-cases>
+    <doris-show-data-types sql-case-id="show_data_types" />
+</sql-parser-test-cases>
diff --git a/test/it/parser/src/main/resources/case/dal/show-data.xml 
b/test/it/parser/src/main/resources/case/dal/show-data.xml
new file mode 100644
index 00000000000..68023dad352
--- /dev/null
+++ b/test/it/parser/src/main/resources/case/dal/show-data.xml
@@ -0,0 +1,45 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+  ~ Licensed to the Apache Software Foundation (ASF) under one or more
+  ~ contributor license agreements.  See the NOTICE file distributed with
+  ~ this work for additional information regarding copyright ownership.
+  ~ The ASF licenses this file to You under the Apache License, Version 2.0
+  ~ (the "License"); you may not use this file except in compliance with
+  ~ the License.  You may obtain a copy of the License at
+  ~
+  ~     http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License.
+  -->
+
+<sql-parser-test-cases>
+    <doris-show-data sql-case-id="show_data" />
+
+    <doris-show-data sql-case-id="show_data_from_table">
+        <table name="table1" start-index="15" stop-index="20" />
+    </doris-show-data>
+
+    <doris-show-data sql-case-id="show_data_from_db_table">
+        <table name="table1" start-index="15" stop-index="24">
+            <owner name="db1" start-index="15" stop-index="17" />
+        </table>
+    </doris-show-data>
+
+    <doris-show-data sql-case-id="show_data_order_by">
+        <order-by>
+            <column-item name="ReplicaCount" order-direction="DESC" 
start-index="19" stop-index="30" />
+            <column-item name="Size" order-direction="ASC" start-index="38" 
stop-index="41" />
+        </order-by>
+    </doris-show-data>
+
+    <doris-show-data sql-case-id="show_data_from_table_order_by">
+        <table name="table1" start-index="15" stop-index="20" />
+        <order-by>
+            <column-item name="Size" order-direction="DESC" start-index="31" 
stop-index="34" />
+        </order-by>
+    </doris-show-data>
+</sql-parser-test-cases>
diff --git 
a/test/it/parser/src/main/resources/sql/supported/dal/show-data-types.xml 
b/test/it/parser/src/main/resources/sql/supported/dal/show-data-types.xml
new file mode 100644
index 00000000000..fe4f004adeb
--- /dev/null
+++ b/test/it/parser/src/main/resources/sql/supported/dal/show-data-types.xml
@@ -0,0 +1,21 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+  ~ Licensed to the Apache Software Foundation (ASF) under one or more
+  ~ contributor license agreements.  See the NOTICE file distributed with
+  ~ this work for additional information regarding copyright ownership.
+  ~ The ASF licenses this file to You under the Apache License, Version 2.0
+  ~ (the "License"); you may not use this file except in compliance with
+  ~ the License.  You may obtain a copy of the License at
+  ~
+  ~     http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License.
+  -->
+
+<sql-cases>
+    <sql-case id="show_data_types" value="SHOW DATA TYPES;" db-types="Doris" />
+</sql-cases>
diff --git a/test/it/parser/src/main/resources/sql/supported/dal/show-data.xml 
b/test/it/parser/src/main/resources/sql/supported/dal/show-data.xml
new file mode 100644
index 00000000000..c9612643780
--- /dev/null
+++ b/test/it/parser/src/main/resources/sql/supported/dal/show-data.xml
@@ -0,0 +1,25 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+  ~ Licensed to the Apache Software Foundation (ASF) under one or more
+  ~ contributor license agreements.  See the NOTICE file distributed with
+  ~ this work for additional information regarding copyright ownership.
+  ~ The ASF licenses this file to You under the Apache License, Version 2.0
+  ~ (the "License"); you may not use this file except in compliance with
+  ~ the License.  You may obtain a copy of the License at
+  ~
+  ~     http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License.
+  -->
+
+<sql-cases>
+    <sql-case id="show_data" value="SHOW DATA;" db-types="Doris" />
+    <sql-case id="show_data_from_table" value="SHOW DATA FROM table1;" 
db-types="Doris" />
+    <sql-case id="show_data_from_db_table" value="SHOW DATA FROM db1.table1;" 
db-types="Doris" />
+    <sql-case id="show_data_order_by" value="SHOW DATA ORDER BY ReplicaCount 
DESC, Size ASC;" db-types="Doris" />
+    <sql-case id="show_data_from_table_order_by" value="SHOW DATA FROM table1 
ORDER BY Size DESC;" db-types="Doris" />
+</sql-cases>


Reply via email to