示例表(不是实际的数据库):
在此示例中,我将拥有SecurityCode(Unique)和Time。我当前的解决方案涉及尝试使用安全代码添加新的人员,然后查询ID,然后添加到Times表。这是3个单独的语句,可能会快很多。关于如何优化它的任何建议?
谢谢。
编辑:我之前忘记提到此操作通常在30-40条记录中进行。
我也在考虑将SecurityCode用作Times中的外键。
答案 0 :(得分:0)
我认为有很多方法可以做到这一点,最简单:
尝试使用“ IF”,您只需要在语句的第一步中使用它,后两步与评估结果无关。
此外,将安全代码保存在一个变量中,然后将保存一个表扫描(您已经拥有了)
**please note its just pseudo-code**
IF (exists select * from person where securityCode = @securityCode) then
Step 1
End
Step 2
Step 3
可以尝试吗?
答案 1 :(得分:0)
最快的方法似乎是批量忽略插入所有安全代码,然后使用子查询批量插入所有Times,以从Person中选择正确的ID。