mirror of
https://gitee.com/dotnetchina/SqlSugar.git
synced 2025-11-08 02:14:53 +08:00
order by group by
This commit is contained in:
@@ -39,7 +39,7 @@ namespace OrmTest.UnitTest
|
||||
#region dr ot entity
|
||||
db.IgnoreComumns.Add("TestId", "Student");
|
||||
var d5 = db.Queryable<Student>().ToList();
|
||||
var d51 = db.Queryable<Student>().OrderBy(it=>it.Id).ToSql();
|
||||
var d51 = db.Queryable<Student>().GroupBy(it=>it.Id).OrderBy(it=>it.Id).Select(it=>it.Id).ToSql();
|
||||
var dr3 = db.Queryable<Student>().Select(it => new ViewModelStudent2 { Name=it.Name,Student=it}).ToList();
|
||||
var dr0 = db.Queryable<Student>().Select(it => new { id=it.Id,w=new { x=it } }).ToList();
|
||||
var dr1 = db.Queryable<Student>().Select(it => new { newid = it.Id }).ToList();
|
||||
|
||||
@@ -174,7 +174,7 @@ namespace SqlSugar
|
||||
{
|
||||
var orderByValue = SqlBuilder.LambadaQueryBuilder.OrderByValue;
|
||||
if (SqlBuilder.LambadaQueryBuilder.OrderByValue.IsNullOrEmpty()) {
|
||||
SqlBuilder.LambadaQueryBuilder.OrderByValue = "ORDER ";
|
||||
SqlBuilder.LambadaQueryBuilder.OrderByValue = "ORDER BY ";
|
||||
}
|
||||
SqlBuilder.LambadaQueryBuilder.OrderByValue += string.IsNullOrEmpty(orderByValue) ? orderFileds : ("," + orderFileds);
|
||||
return this;
|
||||
@@ -194,12 +194,19 @@ namespace SqlSugar
|
||||
|
||||
public ISugarQueryable<T> GroupBy(Expression<Func<T, object>> expression)
|
||||
{
|
||||
throw new NotImplementedException();
|
||||
_GroupBy(expression);
|
||||
return this;
|
||||
}
|
||||
|
||||
public ISugarQueryable<T> GroupBy(string groupFileds)
|
||||
{
|
||||
throw new NotImplementedException();
|
||||
var croupByValue = SqlBuilder.LambadaQueryBuilder.GroupByValue;
|
||||
if (SqlBuilder.LambadaQueryBuilder.GroupByValue.IsNullOrEmpty())
|
||||
{
|
||||
SqlBuilder.LambadaQueryBuilder.GroupByValue = "GROUP BY ";
|
||||
}
|
||||
SqlBuilder.LambadaQueryBuilder.GroupByValue += string.IsNullOrEmpty(croupByValue) ? groupFileds : ("," + groupFileds);
|
||||
return this;
|
||||
}
|
||||
|
||||
public ISugarQueryable<T> Skip(int index)
|
||||
@@ -422,6 +429,13 @@ namespace SqlSugar
|
||||
OrderBy(orderByValue.GetResultString() + " " + type.ToString().ToUpper());
|
||||
return this;
|
||||
}
|
||||
protected ISugarQueryable<T> _GroupBy(Expression expression)
|
||||
{
|
||||
var isSingle = SqlBuilder.LambadaQueryBuilder.IsSingle();
|
||||
var orderByValue = SqlBuilder.LambadaQueryBuilder.GetExpressionValue(expression, isSingle ? ResolveExpressType.FieldSingle : ResolveExpressType.FieldMultiple);
|
||||
GroupBy(orderByValue.GetResultString());
|
||||
return this;
|
||||
}
|
||||
#endregion
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user