INSERT INTO mailing_lists SELECT business_id , email_address , first_name FROM mailing_lists WHERE business_id = 101 Code (markup): But how to I build in an ON DUPLICATE KEY UPDATE clause?
Do you mean some thing like this? INSERT INTO mailing_lists (business_id, email_address, first_name) SELECT business_id , email_address , first_name FROM mailing_lists WHERE business_id = 101 ON DUPLICATE KEY UPDATE email_address= (select email_address FROM mailing_lists WHERE business_id = 101), (first_name= select first_name FROM mailing_lists WHERE business_id = 101), business_id = 101 Code (markup):