Jika Anda ingin melakukan ini dalam satu pernyataan (terdengar seperti yang Anda inginkan), saya akan merekomendasikan menggunakan INSERT ... ON DUPLICATE KEY UPDATE sintaks, sebagai berikut:
INSERT INTO table (id, someothervalue) VALUES (1, 'hi mom')
ON DUPLICATE KEY UPDATE someothervalue = 'hi mom';
INSERT awal pernyataan akan dijalankan jika tidak ada catatan yang ada dengan nilai kunci yang ditentukan (baik kunci utama atau unik). Jika record sudah ada, berikut UPDATE pernyataan (someothervalue = 3 ) dijalankan.
Ini didukung di semua versi MySQL. Untuk info lebih lanjut, lihat halaman Manual Referensi MySQL untuk INSERT ... ON DUPLICATE KEY UPDATE