【发布时间】:2017-02-17 17:25:50
【问题描述】:
我有一个每周运行的程序包,但如果计数差异超过 1%,则需要停止。
这是我获取 2 个计数百分比的查询:
USE MandatedReporting
DECLARE @a AS float
DECLARE @b AS float
declare @c as float
SET @a = ( SELECT Row_Count
FROM [MandatedReporting].[dbo].[DCFS_Weekly_File_Row_Count] WITH(NOLOCK)
WHERE TableName = 'MandatedReporting.dbo.MATCH_WEEKLY_V3'
AND RunDate = ( SELECT MAX(RunDate) AS RunDate
FROM [MandatedReporting].[dbo].[DCFS_Weekly_File_Row_Count] AS ThisWeeksData WITH(NOLOCK)
WHERE TableName = 'MandatedReporting.dbo.MATCH_WEEKLY_V3'))
SET @b = ( SELECT Row_Count
FROM [MandatedReporting].[dbo].[DCFS_Weekly_File_Row_Count] WITH(NOLOCK)
WHERE TableName = 'MandatedReporting.dbo.MATCH_WEEKLY_V3'
AND RunDate = ( SELECT MIN(RunDate) AS RunDate
FROM [MandatedReporting].[dbo].[DCFS_Weekly_File_Row_Count] AS ThisWeeksData WITH(NOLOCK)
WHERE TableName = 'MandatedReporting.dbo.MATCH_WEEKLY_V3'
AND ABS(DATEDIFF(DD,GETDATE(),CAST(RunDate AS DATETIME))) < 10))
set @c = (@a-@b) *100.0/@b SELECT @c as 'Count'
SQL Server 2008 谢谢
【问题讨论】:
-
忘了说我是 SSIS 的新手
-
停止是什么意思?愉快退出还是抛出错误?
标签: sql-server-2008 ssis package percentage