34,593
社区成员
发帖
与我相关
我的任务
分享
declare @S_SQL nvarchar(max)
declare @S_SQL2 nvarchar(max)
declare @s_sqlWhere nvarchar(max)
set @s_sqlWhere = 'C1=''C'''
SET @S_SQL = 'SELECT c1, c2, c3, c4, PRICE FROM A'
SET @S_SQL2 = 'SELECT '' '', '' '', '' '', '' '', sum(PRICE) as PRICE FROM A'
IF @s_sqlWhere = ''
BEGIN
SET @S_SQL = @S_SQL + ' WHERE 1=2'
SET @S_SQL2 = @S_SQL2 + ' WHERE 1=2'
END
ELSE
BEGIN
SET @S_SQL = @S_SQL + ' WHERE 1=1 AND ' + @s_sqlWhere
SET @S_SQL2 = @S_SQL2 + ' WHERE 1=1 AND ' + @s_sqlWhere
END
SET @S_SQL = @S_SQL + ' union all ' + @S_SQL2
exec(@S_SQL)
SET @S_SQL = 'SELECT *,SUM(PRICE) OVER() TOTAL FROM A'