- 增加 子查询函数 First、Count、Min、Max、Sum、Avg 的支持;

This commit is contained in:
28810
2019-07-09 16:46:11 +08:00
parent 272e55ecbf
commit 87c9ccf5c3
18 changed files with 558 additions and 205 deletions

View File

@ -336,6 +336,17 @@ namespace FreeSql.Tests.MySqlConnector
select.Where(a => 1 == 1).Count(out var count2);
Assert.Equal(count, count2);
Assert.Equal(0, select.Where(a => 1 == 2).Count());
var subquery = select.ToSql(a => new
{
all = a,
count = select.Where(b => b.Id > 0 && b.Id == a.Id).Count()
});
var subqueryList = select.ToList(a => new
{
all = a,
count = select.Where(b => b.Id > 0 && b.Id == a.Id).Count()
});
}
[Fact]
public void Master()
@ -870,18 +881,58 @@ namespace FreeSql.Tests.MySqlConnector
[Fact]
public void Sum()
{
var subquery = select.ToSql(a => new
{
all = a,
count = select.Sum(b => b.Id)
});
var subqueryList = select.ToList(a => new
{
all = a,
count = select.Sum(b => b.Id)
});
}
[Fact]
public void Min()
{
var subquery = select.ToSql(a => new
{
all = a,
count = select.Min(b => b.Id)
});
var subqueryList = select.ToList(a => new
{
all = a,
count = select.Min(b => b.Id)
});
}
[Fact]
public void Max()
{
var subquery = select.ToSql(a => new
{
all = a,
count = select.Max(b => b.Id)
});
var subqueryList = select.ToList(a => new
{
all = a,
count = select.Max(b => b.Id)
});
}
[Fact]
public void Avg()
{
var subquery = select.ToSql(a => new
{
all = a,
count = select.Avg(b => b.Id)
});
var subqueryList = select.ToList(a => new
{
all = a,
count = select.Avg(b => b.Id)
});
}
[Fact]
public void As()