From e873a48188ea7d344cc563801a518c37f08f6399 Mon Sep 17 00:00:00 2001 From: sunkaixuan <610262374@qq.com> Date: Tue, 28 Oct 2025 11:20:51 +0800 Subject: [PATCH] 5.1.4.207 --- .../Oracle/SqlBuilder/OracleQueryBuilder.cs | 14 ++++++++++++-- 1 file changed, 12 insertions(+), 2 deletions(-) diff --git a/Src/Asp.Net/SqlSugar/Realization/Oracle/SqlBuilder/OracleQueryBuilder.cs b/Src/Asp.Net/SqlSugar/Realization/Oracle/SqlBuilder/OracleQueryBuilder.cs index 604385390..98051f5fd 100644 --- a/Src/Asp.Net/SqlSugar/Realization/Oracle/SqlBuilder/OracleQueryBuilder.cs +++ b/Src/Asp.Net/SqlSugar/Realization/Oracle/SqlBuilder/OracleQueryBuilder.cs @@ -27,9 +27,9 @@ namespace SqlSugar { return OffsetPage(); } - else if (this.Take==1&&this.Skip==0) + else if (this.Take==1&&this.Skip==0&&this.TranLock==null&&this.OrderByValue!= "ORDER BY sysdate ") { - return OffsetPage(); + return FirstSql(); } var oldTake = Take; var oldSkip = Skip; @@ -69,6 +69,16 @@ namespace SqlSugar var pageSql = $"SELECT * FROM ( SELECT PAGETABLE1.*,ROWNUM PAGEINDEX FROM( { this.ToSqlString() }) PAGETABLE1 WHERE ROWNUM<={skip+take}) WHERE PAGEINDEX>={(skip==0?skip:(skip+1))}"; return pageSql; } + private string FirstSql() + { + var skip = this.Skip ?? 1; + var take = this.Take; + this.Skip = null; + this.Take = null; + this.Offset = null; + var pageSql = $"SELECT * FROM( {this.ToSqlString()}) PAGETABLE1 WHERE ROWNUM<={skip + take}"; + return pageSql; + } public string _ToSqlString() {