2015-01-16 39 views
0

我有2个查询。当所有线程都以“打印完成”的形式完成处理和提醒时,我基本上需要从2个查询中解决问题。要做到这一点 - 如果当前处理查询匹配总查看输出编号,则所有线程都在该批处理中完成。我需要创建一个PRINT完成的存储过程。这样做的最好方法是什么?SQL指示完成一次匹配2个匹配结果查询

- 如何许多来处理 - 这是通过首先将(但不处理)

SELECT COUNT(IsProcessed) as 'Current Put through' 
    FROM [dbo].[threads] 

- 当前加工 - 此增量由Isprocessed标志由1改变到1的值上升1

SELECT COUNT(IsProcessed) 'Current_Processing' 
FROM [dbo].[threads] as count 
where IsProcessed=1 

回答

1

你能做下面的事吗?

IF NOT EXISTS (SELECT 1 FROM dbo.Threads WHERE IsProcessed != 1) 
    BEGIN 
    PRINT 'Complete' 
    END 
ELSE 
    BEGIN 
    PRINT 'Ongoing' 
    END 
+0

谢谢,但没有工作没有。目前作为测试,有11个处理从112的数量,并且您提供的陈述是完整的打印 –

+0

哎呦......我把它倒过来。改为尝试修改的代码。 – AHiggins

+0

谢谢AHiggins,我们能够在那里放置一个ELSE吗?我在下面放置了一个Else语法错误。 ELSE打印'仍然会' –

0
select *, 
case when cntAll = cntProcessed then 'Complete' else 'Ongoing' end as Status 
from (
select count(case when IsProcessed = 1 then 1 else NULL end) Current_Processing, 
count(1) 'Current Put through' 
from [dbo].[threads])A