Update : 人大金仓[SqlServer] PartitionBy

This commit is contained in:
sunkaixuan
2024-08-25 19:39:56 +08:00
parent 6d51dac4df
commit 44dbb4896f
2 changed files with 24 additions and 5 deletions

View File

@@ -13,11 +13,11 @@ namespace SqlSugar
return this; return this;
} }
public override ISugarQueryable<T> PartitionBy(string groupFileds) //public override ISugarQueryable<T> PartitionBy(string groupFileds)
{ //{
this.GroupBy(groupFileds); // this.QueryBuilder.
return this; // return this;
} //}
} }
public class KdbndpQueryable<T, T2> : QueryableProvider<T, T2> public class KdbndpQueryable<T, T2> : QueryableProvider<T, T2>
{ {

View File

@@ -7,6 +7,17 @@ namespace SqlSugar
public partial class KdbndpQueryBuilder : QueryBuilder public partial class KdbndpQueryBuilder : QueryBuilder
{ {
#region Sql Template #region Sql Template
public override string SqlTemplate
{
get
{
if (this.PartitionByValue.HasValue())
{
return "SELECT {0}{" + UtilConstants.ReplaceKey + "} FROM {1}{2}{3}{4}";
}
return base.SqlTemplate;
}
}
public override string PageTempalte public override string PageTempalte
{ {
get get
@@ -14,6 +25,10 @@ namespace SqlSugar
/* /*
SELECT * FROM TABLE WHERE CONDITION ORDER BY ID DESC LIMIT 10 offset 0 SELECT * FROM TABLE WHERE CONDITION ORDER BY ID DESC LIMIT 10 offset 0
*/ */
if (this.PartitionByValue.HasValue())
{
return base.PageTempalte;
}
var template = "SELECT {0} FROM {1} {2} {3} {4} LIMIT {6} offset {5}"; var template = "SELECT {0} FROM {1} {2} {3} {4} LIMIT {6} offset {5}";
return template; return template;
} }
@@ -35,6 +50,10 @@ namespace SqlSugar
} }
public override string ToSqlString() public override string ToSqlString()
{ {
if (PartitionByValue.HasValue())
{
return base.ToSqlString();
}
base.AppendFilter(); base.AppendFilter();
string oldOrderValue = this.OrderByValue; string oldOrderValue = this.OrderByValue;
var isNullOrderValue = Skip == 0 && Take == 1 && oldOrderValue == "ORDER BY NOW() "; var isNullOrderValue = Skip == 0 && Take == 1 && oldOrderValue == "ORDER BY NOW() ";