【发布时间】:2011-01-20 11:49:27
【问题描述】:
我有一个包含主键 (int) 和唯一值 (nvarchar(255)) 的两列表
当我在这个表中插入一个值时,我可以使用 Scope_identity() 来返回我刚刚插入的值的主键。但是,如果该值已经存在,我必须执行额外的选择以返回主键以进行后续操作(将该主键插入到第二个表中)
我认为必须有更好的方法来做到这一点 - 我考虑使用覆盖索引,但表只有两列,我在覆盖索引上阅读的大部分内容表明它们仅在表明显更大的情况下才有帮助比指数。
有没有更快的方法来做到这一点?即使覆盖的索引与表的大小相同,它会更快吗?
【问题讨论】:
-
你的意思是“如果值已经存在”...你的意思是你首先尝试找到具有相同'Column2'值的记录?
标签: sql sql-server indexing