如何使用2个字段检查SQL Server 2000中是否存在记录

时间:2014-11-03 10:06:34

标签: sql-server stored-procedures sql-server-2000

我有一个简单的问题。我已经编写了一个存储过程来询问一个表,检查是否有基于2个关键字段的记录,如果没有添加记录。

所以目前我的代码看起来像这样。

select @counter=count(*) from f03 where someid NOT IN (select someid from ReportedEventGPQ)

我想知道如何转换此计数器,不仅检查ReportedEventGPQ表中的someid,还检查另一个名为TimepointID的字段

这样,当存储过程运行时,它会检查userid(someid)和timepointid是否已经在ReportedEventGPQ中。因为用户可以在f03中输入10个时间点的行,每个时间点在f03表中都有一个时间点的行。

非常感谢任何帮助。

2 个答案:

答案 0 :(得分:0)

您可以使用此

从f03中选择@ counter = count(),其中1> (从ReportedEventGPQ中选择COUNT(),其中id = someid,other_column = value)

答案 1 :(得分:0)

尝试使用WHERE NOT EXISTS

   select @counter=count(*) from f03 
    where not exists(select * from ReportedEventGPQ where someid =f03.someid and TimepointID=f03.TimepointID)