34,594
社区成员
发帖
与我相关
我的任务
分享
declare @num int,@result INT;
DECLARE @table varchar(50) = 'table1'
DECLARE @sql varchar(3000) = '
SET @result = select top 1 (PERCENTILE_DISC(0.60) WITHIN GROUP (ORDER BY [time]) OVER () ) AS [P60]
(select avg([time]) from @table) as AVG
from @table where @where'
PRINT '2015'
SET @where = '[year]=''2015'''
SET @run = REPLACE(REPLACE(@sql, '@table', ''+@table+''), '@where', ''+@where+'')
EXEC sp_executesql @run, N'@result AS INT OUTPUT ', @result=@num output ;
SELECT @num;