From 21dc0dfac550dcf8208a50883a37062f9244fe0d Mon Sep 17 00:00:00 2001 From: cc <52334755@qq.com> Date: Wed, 28 Aug 2019 13:42:47 +0800 Subject: [PATCH] =?UTF-8?q?=E8=A7=A3=E6=9E=90=E5=88=86=E9=A1=B5=E9=97=AE?= =?UTF-8?q?=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../Query/Sql/Internal/OracleQuerySqlGenerator.cs | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/src/OracleProvider/Query/Sql/Internal/OracleQuerySqlGenerator.cs b/src/OracleProvider/Query/Sql/Internal/OracleQuerySqlGenerator.cs index 3f25889..b49908c 100644 --- a/src/OracleProvider/Query/Sql/Internal/OracleQuerySqlGenerator.cs +++ b/src/OracleProvider/Query/Sql/Internal/OracleQuerySqlGenerator.cs @@ -210,7 +210,16 @@ public override Expression VisitSelect(SelectExpression selectExpression) if (RequiresRowNumberPaging(selectExpression)) { - Sql.Append(",rownum RN "); + if (selectExpression.OrderBy != null && selectExpression.OrderBy.Any()) + { + string fields = string.Join(",", selectExpression.OrderBy.Select(x => x.ToString()).ToArray()); + Sql.Append(string.Format(", row_number() over(order by {0}) RN ", fields)); + } + else + { + Sql.Append(",rownum RN "); + } + } }