我的表
member_id - profil_id - A - B - C
1 2 1 0 0
1 3 0 1 0
我想更新(member_id=1
和profil_id=2
和A=1
)的记录
member_id - profil_id - A - B - C
1 2 2 0 0
1 3 0 1 0
再次,我想更新(member_id=1
和profil_id=2
和A=1
)的记录
member_id - profil_id - A - B - C
1 2 3 0 0
1 3 0 1 0
我想为(member_id=1
和profil_id=4
以及A=1
)
member_id - profil_id - A - B - C
1 2 3 0 0
1 3 0 1 0
1 4 1 0 0
我想再次更新(member_id=1
和profil_id=4
以及C=1
)的记录
member_id - profil_id - A - B - C
1 2 3 0 0
1 3 0 1 0
1 4 1 0 1
我想再次更新(member_id=1
和profil_id=4
以及C=1
)的记录
member_id - profil_id - A - B - C
1 2 3 0 0
1 3 0 1 0
1 4 1 0 2
像这样......
感谢..
答案 0 :(得分:1)
在MySQL中有两种方法可以做到这一点。第一个是使用REPLACE
。第二个是使用INSERT...ON DUPLICATE KEY UPDATE
。
REPLACE
将尝试删除行,无论成功与否,都插入新行。
INSERT...ON DUPLICATE KEY UPDATE
将尝试插入一行,如果插入因索引错误的重复键而失败,则进行更新。