我有一个简单的问题。我已经编写了一个存储过程来询问一个表,检查是否有基于2个关键字段的记录,如果没有添加记录。
所以目前我的代码看起来像这样。
select @counter=count(*) from f03 where someid NOT IN (select someid from ReportedEventGPQ)
我想知道如何转换此计数器,不仅检查ReportedEventGPQ表中的someid,还检查另一个名为TimepointID的字段
这样,当存储过程运行时,它会检查userid(someid)和timepointid是否已经在ReportedEventGPQ中。因为用户可以在f03中输入10个时间点的行,每个时间点在f03表中都有一个时间点的行。
非常感谢任何帮助。
答案 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)