MySQL'de Çoklu Güncellemeler

Aynı anda birden fazla satır ekleyebildiğinizi biliyorum, MySQL'de aynı anda birden fazla satırı güncellemenin (tek bir sorguda olduğu gibi) bir yolu var mı?

Düzenle: Örneğin bende aşağıdakiler var

Name   id  Col1  Col2
Row1   1    6     1
Row2   2    2     3
Row3   3    9     5
Row4   4    16    8

Aşağıdaki Güncellemelerin tümünü tek bir sorguda birleştirmek istiyorum

UPDATE table SET Col1 = 1 WHERE id = 1;
UPDATE table SET Col1 = 2 WHERE id = 2;
UPDATE table SET Col2 = 3 WHERE id = 3;
UPDATE table SET Col1 = 10 WHERE id = 4;
UPDATE table SET Col2 = 12 WHERE id = 4;
UPDATE table1, table2 SET table1.col1='value', table2.col1='value' WHERE table1.col3='567' AND table2.col6='567'

Bu işine yarayacaktır.

MySQL kılavuzunda]1 çoklu tablolar için bir referans bulunmaktadır.

Yorumlar (0)

Güncellemelerde birleştirme kullanmak da ilginizi çekebilir, bu da mümkündür.

Update someTable Set someValue = 4 From someTable s Inner Join anotherTable a on s.id = a.id Where a.id = 4
-- Only updates someValue in someTable who has a foreign key on anotherTable with a value of 4.

Düzenleme: Güncellemekte olduğunuz değerler veritabanında başka bir yerden gelmiyorsa, birden fazla güncelleme sorgusu yayınlamanız gerekecektir.

Yorumlar (0)

Aşağıdakiler bir tablodaki tüm satırları güncelleyecektir

Update Table Set
Column1 = 'New Value'

Bir sonraki, Sütun2 değerinin 5'ten fazla olduğu tüm satırları güncelleyecektir

Update Table Set
Column1 = 'New Value'
Where
Column2 > 5

Birden fazla tablonun güncellenmesine ilişkin tüm Unkwntech'örneği vardır

UPDATE table1, table2 SET
table1.col1 = 'value',
table2.col1 = 'value'
WHERE
table1.col3 = '567'
AND table2.col6='567'
Yorumlar (0)