Mysql
 sql >> Database >  >> RDS >> Mysql

Aggiunta della clausola Inner join e where a INSERT INTO ON DUPLICATE KEY UPDATE

Non sono sicuro di cosa vuoi fare esattamente. Ma puoi inserire qualsiasi select istruzione in un insert . . . select dichiarazione e continuare a utilizzare on duplicate key update . Ad esempio:

insert into Table1(field1, field2)
    select 1, 2
    from table1 t1 join
         table2 t2
         on t2.id = t1.field_id
    where t2.addr = '123456'
    on duplicate key update field1 = 1, field2 = 2;