Skip to content

Commit 1b84a00

Browse files
committed
- 优化 子查询 sum/min/max/avg 默认加 isnull 防止为 NULL 情况;
1 parent e2d6c89 commit 1b84a00

File tree

22 files changed

+178
-187
lines changed

22 files changed

+178
-187
lines changed

FreeSql.DbContext/FreeSql.DbContext.xml

Lines changed: 0 additions & 9 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

FreeSql.Tests/FreeSql.Tests.Provider.GBase/GBase/Curd/GBaseSelectTest.cs

Lines changed: 9 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
using FreeSql.DataAnnotations;
1+
using FreeSql.DataAnnotations;
22
using System;
33
using System.Collections.Generic;
44
using System.Linq;
@@ -850,8 +850,8 @@ public void Sum()
850850
all = a,
851851
count = (long)select.As("b").Sum(b => b.Id)
852852
});
853-
Assert.Equal(@"SELECT a.Id as1, a.Clicks as2, a.TypeGuid as3, a.Title as4, a.CreateTime as5, (SELECT sum(b.Id)
854-
FROM tb_topic22 b) as6
853+
Assert.Equal(@"SELECT a.Id as1, a.Clicks as2, a.TypeGuid as3, a.Title as4, a.CreateTime as5, nvl((SELECT sum(b.Id)
854+
FROM tb_topic22 b), 0) as6
855855
FROM tb_topic22 a", subquery);
856856
var subqueryList = select.ToList(a => new
857857
{
@@ -867,8 +867,8 @@ public void Min()
867867
all = a,
868868
count = select.As("b").Min(b => b.Id)
869869
});
870-
Assert.Equal(@"SELECT a.Id as1, a.Clicks as2, a.TypeGuid as3, a.Title as4, a.CreateTime as5, (SELECT min(b.Id)
871-
FROM tb_topic22 b) as6
870+
Assert.Equal(@"SELECT a.Id as1, a.Clicks as2, a.TypeGuid as3, a.Title as4, a.CreateTime as5, nvl((SELECT min(b.Id)
871+
FROM tb_topic22 b), 0) as6
872872
FROM tb_topic22 a", subquery);
873873
var subqueryList = select.ToList(a => new
874874
{
@@ -884,8 +884,8 @@ public void Max()
884884
all = a,
885885
count = select.As("b").Max(b => b.Id)
886886
});
887-
Assert.Equal(@"SELECT a.Id as1, a.Clicks as2, a.TypeGuid as3, a.Title as4, a.CreateTime as5, (SELECT max(b.Id)
888-
FROM tb_topic22 b) as6
887+
Assert.Equal(@"SELECT a.Id as1, a.Clicks as2, a.TypeGuid as3, a.Title as4, a.CreateTime as5, nvl((SELECT max(b.Id)
888+
FROM tb_topic22 b), 0) as6
889889
FROM tb_topic22 a", subquery);
890890
var subqueryList = select.ToList(a => new
891891
{
@@ -901,8 +901,8 @@ public void Avg()
901901
all = a,
902902
count = select.As("b").Avg(b => b.Id)
903903
});
904-
Assert.Equal(@"SELECT a.Id as1, a.Clicks as2, a.TypeGuid as3, a.Title as4, a.CreateTime as5, (SELECT avg(b.Id)
905-
FROM tb_topic22 b) as6
904+
Assert.Equal(@"SELECT a.Id as1, a.Clicks as2, a.TypeGuid as3, a.Title as4, a.CreateTime as5, nvl((SELECT avg(b.Id)
905+
FROM tb_topic22 b), 0) as6
906906
FROM tb_topic22 a", subquery);
907907
var subqueryList = select.ToList(a => new
908908
{

FreeSql.Tests/FreeSql.Tests.Provider.MySqlConnector/MySqlConnector/Curd/MySqlSelectTest.cs

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -1070,8 +1070,8 @@ public void Sum()
10701070
all = a,
10711071
count = (long)select.As("b").Sum(b => b.Id)
10721072
});
1073-
Assert.Equal(@"SELECT a.`Id` as1, a.`Clicks` as2, a.`TypeGuid` as3, a.`Title` as4, a.`CreateTime` as5, (SELECT sum(b.`Id`)
1074-
FROM `tb_topic` b) as6
1073+
Assert.Equal(@"SELECT a.`Id` as1, a.`Clicks` as2, a.`TypeGuid` as3, a.`Title` as4, a.`CreateTime` as5, ifnull((SELECT sum(b.`Id`)
1074+
FROM `tb_topic` b), 0) as6
10751075
FROM `tb_topic` a", subquery);
10761076
var subqueryList = select.ToList(a => new
10771077
{
@@ -1087,8 +1087,8 @@ public void Min()
10871087
all = a,
10881088
count = select.As("b").Min(b => b.Id)
10891089
});
1090-
Assert.Equal(@"SELECT a.`Id` as1, a.`Clicks` as2, a.`TypeGuid` as3, a.`Title` as4, a.`CreateTime` as5, (SELECT min(b.`Id`)
1091-
FROM `tb_topic` b) as6
1090+
Assert.Equal(@"SELECT a.`Id` as1, a.`Clicks` as2, a.`TypeGuid` as3, a.`Title` as4, a.`CreateTime` as5, ifnull((SELECT min(b.`Id`)
1091+
FROM `tb_topic` b), 0) as6
10921092
FROM `tb_topic` a", subquery);
10931093
var subqueryList = select.ToList(a => new
10941094
{
@@ -1104,8 +1104,8 @@ public void Max()
11041104
all = a,
11051105
count = select.As("b").Max(b => b.Id)
11061106
});
1107-
Assert.Equal(@"SELECT a.`Id` as1, a.`Clicks` as2, a.`TypeGuid` as3, a.`Title` as4, a.`CreateTime` as5, (SELECT max(b.`Id`)
1108-
FROM `tb_topic` b) as6
1107+
Assert.Equal(@"SELECT a.`Id` as1, a.`Clicks` as2, a.`TypeGuid` as3, a.`Title` as4, a.`CreateTime` as5, ifnull((SELECT max(b.`Id`)
1108+
FROM `tb_topic` b), 0) as6
11091109
FROM `tb_topic` a", subquery);
11101110
var subqueryList = select.ToList(a => new
11111111
{
@@ -1121,8 +1121,8 @@ public void Avg()
11211121
all = a,
11221122
count = select.As("b").Avg(b => b.Id)
11231123
});
1124-
Assert.Equal(@"SELECT a.`Id` as1, a.`Clicks` as2, a.`TypeGuid` as3, a.`Title` as4, a.`CreateTime` as5, (SELECT avg(b.`Id`)
1125-
FROM `tb_topic` b) as6
1124+
Assert.Equal(@"SELECT a.`Id` as1, a.`Clicks` as2, a.`TypeGuid` as3, a.`Title` as4, a.`CreateTime` as5, ifnull((SELECT avg(b.`Id`)
1125+
FROM `tb_topic` b), 0) as6
11261126
FROM `tb_topic` a", subquery);
11271127
var subqueryList = select.ToList(a => new
11281128
{

FreeSql.Tests/FreeSql.Tests.Provider.Odbc/Dameng/Curd/DamengSelectTest.cs

Lines changed: 9 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
using FreeSql.DataAnnotations;
1+
using FreeSql.DataAnnotations;
22
using System;
33
using System.Collections.Generic;
44
using System.Linq;
@@ -864,8 +864,8 @@ public void Sum()
864864
all = a,
865865
count = (long)select.As("b").Sum(b => b.Id)
866866
});
867-
Assert.Equal(@"SELECT a.""ID"" as1, a.""CLICKS"" as2, a.""TYPEGUID"" as3, a.""TITLE"" as4, a.""CREATETIME"" as5, (SELECT sum(b.""ID"")
868-
FROM ""TB_TOPIC22"" b) as6
867+
Assert.Equal(@"SELECT a.""ID"" as1, a.""CLICKS"" as2, a.""TYPEGUID"" as3, a.""TITLE"" as4, a.""CREATETIME"" as5, nvl((SELECT sum(b.""ID"")
868+
FROM ""TB_TOPIC22"" b), 0) as6
869869
FROM ""TB_TOPIC22"" a", subquery);
870870
var subqueryList = select.ToList(a => new
871871
{
@@ -881,8 +881,8 @@ public void Min()
881881
all = a,
882882
count = select.As("b").Min(b => b.Id)
883883
});
884-
Assert.Equal(@"SELECT a.""ID"" as1, a.""CLICKS"" as2, a.""TYPEGUID"" as3, a.""TITLE"" as4, a.""CREATETIME"" as5, (SELECT min(b.""ID"")
885-
FROM ""TB_TOPIC22"" b) as6
884+
Assert.Equal(@"SELECT a.""ID"" as1, a.""CLICKS"" as2, a.""TYPEGUID"" as3, a.""TITLE"" as4, a.""CREATETIME"" as5, nvl((SELECT min(b.""ID"")
885+
FROM ""TB_TOPIC22"" b), 0) as6
886886
FROM ""TB_TOPIC22"" a", subquery);
887887
var subqueryList = select.ToList(a => new
888888
{
@@ -898,8 +898,8 @@ public void Max()
898898
all = a,
899899
count = select.As("b").Max(b => b.Id)
900900
});
901-
Assert.Equal(@"SELECT a.""ID"" as1, a.""CLICKS"" as2, a.""TYPEGUID"" as3, a.""TITLE"" as4, a.""CREATETIME"" as5, (SELECT max(b.""ID"")
902-
FROM ""TB_TOPIC22"" b) as6
901+
Assert.Equal(@"SELECT a.""ID"" as1, a.""CLICKS"" as2, a.""TYPEGUID"" as3, a.""TITLE"" as4, a.""CREATETIME"" as5, nvl((SELECT max(b.""ID"")
902+
FROM ""TB_TOPIC22"" b), 0) as6
903903
FROM ""TB_TOPIC22"" a", subquery);
904904
var subqueryList = select.ToList(a => new
905905
{
@@ -915,8 +915,8 @@ public void Avg()
915915
all = a,
916916
count = select.As("b").Avg(b => b.Id)
917917
});
918-
Assert.Equal(@"SELECT a.""ID"" as1, a.""CLICKS"" as2, a.""TYPEGUID"" as3, a.""TITLE"" as4, a.""CREATETIME"" as5, (SELECT avg(b.""ID"")
919-
FROM ""TB_TOPIC22"" b) as6
918+
Assert.Equal(@"SELECT a.""ID"" as1, a.""CLICKS"" as2, a.""TYPEGUID"" as3, a.""TITLE"" as4, a.""CREATETIME"" as5, nvl((SELECT avg(b.""ID"")
919+
FROM ""TB_TOPIC22"" b), 0) as6
920920
FROM ""TB_TOPIC22"" a", subquery);
921921
var subqueryList = select.ToList(a => new
922922
{

FreeSql.Tests/FreeSql.Tests.Provider.Odbc/Default/Curd/OdbcSelectTest.cs

Lines changed: 9 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
using FreeSql.DataAnnotations;
1+
using FreeSql.DataAnnotations;
22
using System;
33
using System.Collections.Generic;
44
using System.Linq;
@@ -829,8 +829,8 @@ public void Sum()
829829
all = a,
830830
count = (long)select.As("b").Sum(b => b.Id)
831831
});
832-
Assert.Equal(@"SELECT a.[Id] as1, a.[Clicks] as2, a.[TypeGuid] as3, a.[Title] as4, a.[CreateTime] as5, (SELECT sum(b.[Id])
833-
FROM [tb_topic22] b) as6
832+
Assert.Equal(@"SELECT a.[Id] as1, a.[Clicks] as2, a.[TypeGuid] as3, a.[Title] as4, a.[CreateTime] as5, isnull((SELECT sum(b.[Id])
833+
FROM [tb_topic22] b), 0) as6
834834
FROM [tb_topic22] a", subquery);
835835
var subqueryList = select.ToList(a => new
836836
{
@@ -846,8 +846,8 @@ public void Min()
846846
all = a,
847847
count = select.As("b").Min(b => b.Id)
848848
});
849-
Assert.Equal(@"SELECT a.[Id] as1, a.[Clicks] as2, a.[TypeGuid] as3, a.[Title] as4, a.[CreateTime] as5, (SELECT min(b.[Id])
850-
FROM [tb_topic22] b) as6
849+
Assert.Equal(@"SELECT a.[Id] as1, a.[Clicks] as2, a.[TypeGuid] as3, a.[Title] as4, a.[CreateTime] as5, isnull((SELECT min(b.[Id])
850+
FROM [tb_topic22] b), 0) as6
851851
FROM [tb_topic22] a", subquery);
852852
var subqueryList = select.ToList(a => new
853853
{
@@ -863,8 +863,8 @@ public void Max()
863863
all = a,
864864
count = select.As("b").Max(b => b.Id)
865865
});
866-
Assert.Equal(@"SELECT a.[Id] as1, a.[Clicks] as2, a.[TypeGuid] as3, a.[Title] as4, a.[CreateTime] as5, (SELECT max(b.[Id])
867-
FROM [tb_topic22] b) as6
866+
Assert.Equal(@"SELECT a.[Id] as1, a.[Clicks] as2, a.[TypeGuid] as3, a.[Title] as4, a.[CreateTime] as5, isnull((SELECT max(b.[Id])
867+
FROM [tb_topic22] b), 0) as6
868868
FROM [tb_topic22] a", subquery);
869869
var subqueryList = select.ToList(a => new
870870
{
@@ -880,8 +880,8 @@ public void Avg()
880880
all = a,
881881
count = select.As("b").Avg(b => b.Id)
882882
});
883-
Assert.Equal(@"SELECT a.[Id] as1, a.[Clicks] as2, a.[TypeGuid] as3, a.[Title] as4, a.[CreateTime] as5, (SELECT avg(b.[Id])
884-
FROM [tb_topic22] b) as6
883+
Assert.Equal(@"SELECT a.[Id] as1, a.[Clicks] as2, a.[TypeGuid] as3, a.[Title] as4, a.[CreateTime] as5, isnull((SELECT avg(b.[Id])
884+
FROM [tb_topic22] b), 0) as6
885885
FROM [tb_topic22] a", subquery);
886886
var subqueryList = select.ToList(a => new
887887
{

FreeSql.Tests/FreeSql.Tests.Provider.Odbc/KingbaseES/Curd/KingbaseESSelectTest.cs

Lines changed: 9 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
using FreeSql.DataAnnotations;
1+
using FreeSql.DataAnnotations;
22
using System;
33
using System.Collections.Generic;
44
using System.Linq;
@@ -830,8 +830,8 @@ public void Sum()
830830
all = a,
831831
count = (long)select.As("b").Sum(b => b.Id)
832832
});
833-
Assert.Equal(@"SELECT a.""ID"" as1, a.""CLICKS"" as2, a.""TYPEGUID"" as3, a.""TITLE"" as4, a.""CREATETIME"" as5, (SELECT sum(b.""ID"")
834-
FROM ""TB_TOPIC22"" b) as6
833+
Assert.Equal(@"SELECT a.""ID"" as1, a.""CLICKS"" as2, a.""TYPEGUID"" as3, a.""TITLE"" as4, a.""CREATETIME"" as5, coalesce((SELECT sum(b.""ID"")
834+
FROM ""TB_TOPIC22"" b), 0) as6
835835
FROM ""TB_TOPIC22"" a", subquery);
836836
var subqueryList = select.ToList(a => new
837837
{
@@ -847,8 +847,8 @@ public void Min()
847847
all = a,
848848
count = select.As("b").Min(b => b.Id)
849849
});
850-
Assert.Equal(@"SELECT a.""ID"" as1, a.""CLICKS"" as2, a.""TYPEGUID"" as3, a.""TITLE"" as4, a.""CREATETIME"" as5, (SELECT min(b.""ID"")
851-
FROM ""TB_TOPIC22"" b) as6
850+
Assert.Equal(@"SELECT a.""ID"" as1, a.""CLICKS"" as2, a.""TYPEGUID"" as3, a.""TITLE"" as4, a.""CREATETIME"" as5, coalesce((SELECT min(b.""ID"")
851+
FROM ""TB_TOPIC22"" b), 0) as6
852852
FROM ""TB_TOPIC22"" a", subquery);
853853
var subqueryList = select.ToList(a => new
854854
{
@@ -864,8 +864,8 @@ public void Max()
864864
all = a,
865865
count = select.As("b").Max(b => b.Id)
866866
});
867-
Assert.Equal(@"SELECT a.""ID"" as1, a.""CLICKS"" as2, a.""TYPEGUID"" as3, a.""TITLE"" as4, a.""CREATETIME"" as5, (SELECT max(b.""ID"")
868-
FROM ""TB_TOPIC22"" b) as6
867+
Assert.Equal(@"SELECT a.""ID"" as1, a.""CLICKS"" as2, a.""TYPEGUID"" as3, a.""TITLE"" as4, a.""CREATETIME"" as5, coalesce((SELECT max(b.""ID"")
868+
FROM ""TB_TOPIC22"" b), 0) as6
869869
FROM ""TB_TOPIC22"" a", subquery);
870870
var subqueryList = select.ToList(a => new
871871
{
@@ -881,8 +881,8 @@ public void Avg()
881881
all = a,
882882
count = select.As("b").Avg(b => b.Id)
883883
});
884-
Assert.Equal(@"SELECT a.""ID"" as1, a.""CLICKS"" as2, a.""TYPEGUID"" as3, a.""TITLE"" as4, a.""CREATETIME"" as5, (SELECT avg(b.""ID"")
885-
FROM ""TB_TOPIC22"" b) as6
884+
Assert.Equal(@"SELECT a.""ID"" as1, a.""CLICKS"" as2, a.""TYPEGUID"" as3, a.""TITLE"" as4, a.""CREATETIME"" as5, coalesce((SELECT avg(b.""ID"")
885+
FROM ""TB_TOPIC22"" b), 0) as6
886886
FROM ""TB_TOPIC22"" a", subquery);
887887
var subqueryList = select.ToList(a => new
888888
{

FreeSql.Tests/FreeSql.Tests.Provider.Odbc/MySql/Curd/MySqlSelectTest.cs

Lines changed: 9 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
using FreeSql.DataAnnotations;
1+
using FreeSql.DataAnnotations;
22
using Newtonsoft.Json;
33
using System;
44
using System.Collections.Generic;
@@ -950,8 +950,8 @@ public void Sum()
950950
all = a,
951951
count = (long)select.As("b").Sum(b => b.Id)
952952
});
953-
Assert.Equal(@"SELECT a.`Id` as1, a.`Clicks` as2, a.`TypeGuid` as3, a.`Title` as4, a.`CreateTime` as5, (SELECT sum(b.`Id`)
954-
FROM `tb_topic` b) as6
953+
Assert.Equal(@"SELECT a.`Id` as1, a.`Clicks` as2, a.`TypeGuid` as3, a.`Title` as4, a.`CreateTime` as5, ifnull((SELECT sum(b.`Id`)
954+
FROM `tb_topic` b), 0) as6
955955
FROM `tb_topic` a", subquery);
956956
var subqueryList = select.ToList(a => new
957957
{
@@ -967,8 +967,8 @@ public void Min()
967967
all = a,
968968
count = select.As("b").Min(b => b.Id)
969969
});
970-
Assert.Equal(@"SELECT a.`Id` as1, a.`Clicks` as2, a.`TypeGuid` as3, a.`Title` as4, a.`CreateTime` as5, (SELECT min(b.`Id`)
971-
FROM `tb_topic` b) as6
970+
Assert.Equal(@"SELECT a.`Id` as1, a.`Clicks` as2, a.`TypeGuid` as3, a.`Title` as4, a.`CreateTime` as5, ifnull((SELECT min(b.`Id`)
971+
FROM `tb_topic` b), 0) as6
972972
FROM `tb_topic` a", subquery);
973973
var subqueryList = select.ToList(a => new
974974
{
@@ -984,8 +984,8 @@ public void Max()
984984
all = a,
985985
count = select.As("b").Max(b => b.Id)
986986
});
987-
Assert.Equal(@"SELECT a.`Id` as1, a.`Clicks` as2, a.`TypeGuid` as3, a.`Title` as4, a.`CreateTime` as5, (SELECT max(b.`Id`)
988-
FROM `tb_topic` b) as6
987+
Assert.Equal(@"SELECT a.`Id` as1, a.`Clicks` as2, a.`TypeGuid` as3, a.`Title` as4, a.`CreateTime` as5, ifnull((SELECT max(b.`Id`)
988+
FROM `tb_topic` b), 0) as6
989989
FROM `tb_topic` a", subquery);
990990
var subqueryList = select.ToList(a => new
991991
{
@@ -1001,8 +1001,8 @@ public void Avg()
10011001
all = a,
10021002
count = select.As("b").Avg(b => b.Id)
10031003
});
1004-
Assert.Equal(@"SELECT a.`Id` as1, a.`Clicks` as2, a.`TypeGuid` as3, a.`Title` as4, a.`CreateTime` as5, (SELECT avg(b.`Id`)
1005-
FROM `tb_topic` b) as6
1004+
Assert.Equal(@"SELECT a.`Id` as1, a.`Clicks` as2, a.`TypeGuid` as3, a.`Title` as4, a.`CreateTime` as5, ifnull((SELECT avg(b.`Id`)
1005+
FROM `tb_topic` b), 0) as6
10061006
FROM `tb_topic` a", subquery);
10071007
var subqueryList = select.ToList(a => new
10081008
{

FreeSql.Tests/FreeSql.Tests.Provider.Odbc/Oracle/Curd/OracleSelectTest.cs

Lines changed: 11 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
using FreeSql.DataAnnotations;
1+
using FreeSql.DataAnnotations;
22
using System;
33
using System.Collections.Generic;
44
using System.Linq;
@@ -865,8 +865,8 @@ public void Sum()
865865
all = a,
866866
count = (long)select.As("b").Sum(b => b.Id)
867867
});
868-
Assert.Equal(@"SELECT a.""ID"" as1, a.""CLICKS"" as2, a.""TYPEGUID"" as3, a.""TITLE"" as4, a.""CREATETIME"" as5, (SELECT sum(b.""ID"")
869-
FROM ""TB_TOPIC22"" b) as6
868+
Assert.Equal(@"SELECT a.""ID"" as1, a.""CLICKS"" as2, a.""TYPEGUID"" as3, a.""TITLE"" as4, a.""CREATETIME"" as5, nvl((SELECT sum(b.""ID"")
869+
FROM ""TB_TOPIC22"" b), 0) as6
870870
FROM ""TB_TOPIC22"" a", subquery);
871871
var subqueryList = select.ToList(a => new
872872
{
@@ -882,8 +882,8 @@ public void Min()
882882
all = a,
883883
count = select.As("b").Min(b => b.Id)
884884
});
885-
Assert.Equal(@"SELECT a.""ID"" as1, a.""CLICKS"" as2, a.""TYPEGUID"" as3, a.""TITLE"" as4, a.""CREATETIME"" as5, (SELECT min(b.""ID"")
886-
FROM ""TB_TOPIC22"" b) as6
885+
Assert.Equal(@"SELECT a.""ID"" as1, a.""CLICKS"" as2, a.""TYPEGUID"" as3, a.""TITLE"" as4, a.""CREATETIME"" as5, nvl((SELECT min(b.""ID"")
886+
FROM ""TB_TOPIC22"" b), 0) as6
887887
FROM ""TB_TOPIC22"" a", subquery);
888888
var subqueryList = select.ToList(a => new
889889
{
@@ -899,8 +899,8 @@ public void Max()
899899
all = a,
900900
count = select.As("b").Max(b => b.Id)
901901
});
902-
Assert.Equal(@"SELECT a.""ID"" as1, a.""CLICKS"" as2, a.""TYPEGUID"" as3, a.""TITLE"" as4, a.""CREATETIME"" as5, (SELECT max(b.""ID"")
903-
FROM ""TB_TOPIC22"" b) as6
902+
Assert.Equal(@"SELECT a.""ID"" as1, a.""CLICKS"" as2, a.""TYPEGUID"" as3, a.""TITLE"" as4, a.""CREATETIME"" as5, nvl((SELECT max(b.""ID"")
903+
FROM ""TB_TOPIC22"" b), 0) as6
904904
FROM ""TB_TOPIC22"" a", subquery);
905905
var subqueryList = select.ToList(a => new
906906
{
@@ -916,13 +916,13 @@ public void Avg()
916916
all = a,
917917
count = select.As("b").Avg(b => b.Id)
918918
});
919-
Assert.Equal(@"SELECT a.""ID"" as1, a.""CLICKS"" as2, a.""TYPEGUID"" as3, a.""TITLE"" as4, a.""CREATETIME"" as5, (SELECT avg(b.""ID"")
920-
FROM ""TB_TOPIC22"" b) as6
919+
Assert.Equal(@"SELECT a.""ID"" as1, a.""CLICKS"" as2, a.""TYPEGUID"" as3, a.""TITLE"" as4, a.""CREATETIME"" as5, nvl((SELECT avg(b.""ID"")
920+
FROM ""TB_TOPIC22"" b), 0) as6
921921
FROM ""TB_TOPIC22"" a", subquery);
922-
var subqueryList = select.ToList(a => new
922+
var subqueryList = select.Limit(10).ToList(a => new
923923
{
924924
all = a,
925-
count = select.As("b").Avg(b => b.Id)
925+
count = select.As("b").Limit(10).Avg(b => b.Id)
926926
});
927927
}
928928
[Fact]

0 commit comments

Comments
 (0)