title: Fastest way to return a primary key value SQL Server 2005
body: <p>I have a two column table with a primary key (int) and a unique value (nvarchar(255))</p>
  
  <p>When I insert a value to this table, I can use Scope_identity() to return the primary key for the value I just inserted. However, if the value already exists, I have to perform an additional select to return the primary key for a follow up operation (inserting that primary key into a second table) </p>
  
  <p>I'm thinking there must be a better way to do this - I considered using covered indexes but the table only has two columns, most of what I've read on covered indexes suggests they only help where the table is significantly larger than the index. </p>
  
  <p>Is there any faster way to do this? Would a covered index be faster even if its the same size as the table? </p>