2011-07-23 15 views
10

Birden çok satır eklerken "AÇIK DUPLICATE ANAHTAR GÜNCELLEME" özelliğini kullanarak MySql'deki bir alanı nasıl artırırsınız? bir satır içinBirden çok satır eklerken "DUPLICATE ANAHTAR GÜNCELLEME" kullanarak MySql'deki bir alanı nasıl artırırım?

:

INSERT INTO table 
    (a, counter_elem) 
VALUES 
    (1, 1) 
ON DUPLICATE KEY UPDATE counter_elem = counter_elem+1; 

birden çok satır için:

INSERT INTO table 
    (a, counter_elem) 
VALUES 
    (1, 1), 
    (2, 1) 
ON DUPLICATE KEY UPDATE counter_elem = ?; 

Bu işe yaramazsa:

counter_elem = VALUES(counter_elem)+1 

cevap

16

Tamamen aynı şekilde!

INSERT INTO table 
    (a, counter_elem) 
VALUES 
    (1, 1), 
    (2, 1) 
ON DUPLICATE KEY UPDATE counter_elem = counter_elem + 1; 

Orada sorun yok!

+0

Haklısınız. Sormamı sormadan önce denedim ama sınıfımdaki bir hata yüzünden yanlış artış yarattı, şimdi hatayı düzelttim ve işe yarıyor. – Darm

İlgili konular