How to do the on duplicate update in insert query in sql

Arutprakasam 261 Reputation points
2023-11-29T10:18:41.71+00:00

Hi @everyone,

Please share your knowledge to do the on duplicate update in sql.

SQL Server
SQL Server
A family of Microsoft relational database management and analysis systems for e-commerce, line-of-business, and data warehousing solutions.
13,351 questions
Transact-SQL
Transact-SQL
A Microsoft extension to the ANSI SQL language that includes procedural programming, local variables, and various support functions.
4,600 questions
{count} votes

2 answers

Sort by: Most helpful
  1. Arutprakasam 261 Reputation points
    2023-11-29T15:25:22.72+00:00

    Hi @Olaf Helper , My requirement is I have to insert some col1, col2. Out of this col2 is unique column. So already col2 having same value. So I want to update that value automatically while doing the insert.


  2. Bruce (SqlWork.com) 61,491 Reputation points
    2023-11-29T22:37:05.1266667+00:00

    use the merge statement

    merge MyTable t
    using (select @col1, @col2) as s (col1, col2)
      on t.col2 = s.col2
    when matched then 
      update set col1 = s.col1
    when not matched then
      insert (col1, col2)
      values (s.col1, s.col2) 
    
    0 comments No comments