diff --git a/RELEASE-NOTES.md b/RELEASE-NOTES.md
index 9fc8eca107e0d..4ece5ab737d43 100644
--- a/RELEASE-NOTES.md
+++ b/RELEASE-NOTES.md
@@ -138,6 +138,7 @@
1. SQL Parser: Fix set OnDuplicateKeyColumnsSegment on PostgreSQLInsertStatement - [#34425](https://github.com/apache/shardingsphere/pull/34425)
1. SQL Parser: Fix mysql sql parser error when sql contains implicit concat expression - [#34660](https://github.com/apache/shardingsphere/pull/34660)
1. SQL Parser: Refactor pivot and unpivot clause handling to support multiple column names - [35586](https://github.com/apache/shardingsphere/pull/35586)
+1. SQL Parser: Fix oralce sql parser error when sql contains subquery with alias - [#35239](https://github.com/apache/shardingsphere/pull/35239)
1. SQL Binder: Fix is unable to find the outer table in the NotExpressionBinder - [36135](https://github.com/apache/shardingsphere/pull/36135)
1. Transaction: Fix conflicting dependencies of BASE transaction integration module - [#35142](https://github.com/apache/shardingsphere/pull/35142)
1. SQL Federation: Fix Operation not allowed after ResultSet closed exception when use sql federation - [#35206](https://github.com/apache/shardingsphere/pull/35206)
diff --git a/parser/sql/dialect/oracle/src/main/antlr4/imports/oracle/DMLStatement.g4 b/parser/sql/dialect/oracle/src/main/antlr4/imports/oracle/DMLStatement.g4
index 63ec4f804fb5a..1ab24495bcc36 100644
--- a/parser/sql/dialect/oracle/src/main/antlr4/imports/oracle/DMLStatement.g4
+++ b/parser/sql/dialect/oracle/src/main/antlr4/imports/oracle/DMLStatement.g4
@@ -470,7 +470,7 @@ intervalExprClause
queryTableExpr
: queryTableExprSampleClause
| queryName
- | lateralClause
+ | lateralClause (AS? alias)?
| tableCollectionExpr
;
diff --git a/parser/sql/dialect/oracle/src/main/java/org/apache/shardingsphere/sql/parser/oracle/visitor/statement/type/OracleDMLStatementVisitor.java b/parser/sql/dialect/oracle/src/main/java/org/apache/shardingsphere/sql/parser/oracle/visitor/statement/type/OracleDMLStatementVisitor.java
index e708c4a53d5d3..3a0253e4c38f1 100644
--- a/parser/sql/dialect/oracle/src/main/java/org/apache/shardingsphere/sql/parser/oracle/visitor/statement/type/OracleDMLStatementVisitor.java
+++ b/parser/sql/dialect/oracle/src/main/java/org/apache/shardingsphere/sql/parser/oracle/visitor/statement/type/OracleDMLStatementVisitor.java
@@ -1172,6 +1172,9 @@ public ASTNode visitQueryTableExpr(final QueryTableExprContext ctx) {
SubquerySegment subquerySegment = new SubquerySegment(ctx.lateralClause().selectSubquery().start.getStartIndex(), ctx.lateralClause().selectSubquery().stop.getStopIndex(), subquery,
getOriginalText(ctx.lateralClause().selectSubquery()));
result = new SubqueryTableSegment(ctx.lateralClause().LP_().getSymbol().getStartIndex(), ctx.lateralClause().RP_().getSymbol().getStopIndex(), subquerySegment);
+ if (null != ctx.alias()) {
+ result.setAlias((AliasSegment) visit(ctx.alias()));
+ }
} else {
if (null != ctx.tableCollectionExpr().collectionExpr().selectSubquery()) {
SubquerySegment subquerySegment = (SubquerySegment) visit(ctx.tableCollectionExpr());
diff --git a/test/it/parser/src/main/resources/case/dml/select-sub-query.xml b/test/it/parser/src/main/resources/case/dml/select-sub-query.xml
index f850df09d240b..00a6df6bd8961 100644
--- a/test/it/parser/src/main/resources/case/dml/select-sub-query.xml
+++ b/test/it/parser/src/main/resources/case/dml/select-sub-query.xml
@@ -903,4 +903,52 @@
+
+
diff --git a/test/it/parser/src/main/resources/sql/supported/dml/select-sub-query.xml b/test/it/parser/src/main/resources/sql/supported/dml/select-sub-query.xml
index 9c5ce2ede08be..23d1c6d36259f 100644
--- a/test/it/parser/src/main/resources/sql/supported/dml/select-sub-query.xml
+++ b/test/it/parser/src/main/resources/sql/supported/dml/select-sub-query.xml
@@ -37,4 +37,5 @@
+