title: syntax for single row MERGE / upsert in SQL Server
body: <p>I'm trying to do a single row insert/update on a table but all the examples out there are for sets.</p>
  
  <p>Can anyone fix my syntax please:</p>
  
  <pre><code>MERGE member_topic ON mt_member = 0 AND mt_topic = 110
  WHEN MATCHED THEN UPDATE SET mt_notes = 'test'
  WHEN NOT MATCHED THEN INSERT (mt_member, mt_topic, mt_notes) VALUES (0, 110, 'test')
  </code></pre>
  
  <p>Resolution per marc_s is to convert the single row to a subquery - which makes me think the MERGE command is not really intended for single row upserts.</p>
  
  <pre><code>MERGE member_topic
  USING (SELECT 0 mt_member, 110 mt_topic) as source
  ON member_topic.mt_member = source.mt_member AND member_topic.mt_topic = source.mt_topic
  WHEN MATCHED THEN UPDATE SET mt_notes = 'test'
  WHEN NOT MATCHED THEN INSERT (mt_member, mt_topic, mt_notes) VALUES (0, 110, 'test');
  </code></pre>