@@ -225,13 +225,16 @@ public override void Avg_Filter()
225
225
"""
226
226
@__ids_1='[1,2,3]' (Size = 4000)
227
227
228
- SELECT [e].[Id], [e].[Name], AVG(CASE
229
- WHEN [e].[EmployeeId] IN (
230
- SELECT [i].[value]
231
- FROM OPENJSON(@__ids_1) WITH ([value] int '$') AS [i]
232
- ) THEN [e].[Salary]
233
- END) OVER (PARTITION BY [e].[DepartmentName] ORDER BY [e].[Name]) AS [Avg]
228
+ SELECT [e].[Id], [e].[Name], AVG([s].[value]) OVER (PARTITION BY [e].[DepartmentName] ORDER BY [e].[Name]) AS [Avg]
234
229
FROM [Employees] AS [e]
230
+ OUTER APPLY (
231
+ SELECT CASE
232
+ WHEN [e].[EmployeeId] IN (
233
+ SELECT [i].[value]
234
+ FROM OPENJSON(@__ids_1) WITH ([value] int '$') AS [i]
235
+ ) THEN [e].[Salary]
236
+ END AS [value]
237
+ ) AS [s]
235
238
""" ) ;
236
239
}
237
240
@@ -280,13 +283,16 @@ public override void Sum_Filter()
280
283
"""
281
284
@__ids_1='[1,2,3]' (Size = 4000)
282
285
283
- SELECT [e].[Id], [e].[Name], SUM(CASE
284
- WHEN [e].[EmployeeId] IN (
285
- SELECT [i].[value]
286
- FROM OPENJSON(@__ids_1) WITH ([value] int '$') AS [i]
287
- ) THEN [e].[Salary]
288
- END) OVER (PARTITION BY [e].[DepartmentName] ORDER BY [e].[Name]) AS [Sum]
286
+ SELECT [e].[Id], [e].[Name], SUM([s].[value]) OVER (PARTITION BY [e].[DepartmentName] ORDER BY [e].[Name]) AS [Sum]
289
287
FROM [Employees] AS [e]
288
+ OUTER APPLY (
289
+ SELECT CASE
290
+ WHEN [e].[EmployeeId] IN (
291
+ SELECT [i].[value]
292
+ FROM OPENJSON(@__ids_1) WITH ([value] int '$') AS [i]
293
+ ) THEN [e].[Salary]
294
+ END AS [value]
295
+ ) AS [s]
290
296
""" ) ;
291
297
}
292
298
0 commit comments