插入或更新 和 插入或替换 有什么区别吗?怎么选择使用哪一个?
Topic source个人觉得 REPLACE INTO 是先delete 和insert 组合在一起了有就删除在添加,而INSERT INTO ... ON DUPLICATE KEY UPDATE ... 是insert 和 update 组合
id saving_date hour minutes is_energy
21116 2021-09-28 13 01:10 N
在经过
REPLACE INTO `wisdom_bank`.`energy_saving_time`(`id`, `saving_date`, `minutes`, `is_energy`) VALUES (21116, '2021-09-28', '01:10', 'N');
id saving_date hour minutes is_energy
21116 2021-09-28 01:10 N
字段hour13不见了 所以在不确定的情况下慎用REPLACE INTO以防删除了有用数据
补充一点 INSERT INTO ... ON DUPLICATE KEY UPDATE的执行效率要高于REPLACE INTO
以及
INSERT INTO `energy_saving_time`(`id`, `saving_date`, `hour`, `minutes`, `is_energy`) VALUES (21116, '2021-09-28', 13, '01:10', 'Y'),(21117, '2021-09-28', 13,'01:15','Y')
ON DUPLICATE KEY UPDATE is_energy = VALUES(is_energy)
一样可以实现多条数据同时修改
插入或更新给了两组数据,没有用INSERT的,有的话用UPDATE的。
插入或替换,只有一组数据。
含义很明显,如果有的话更新为的数据和没有时新插入的数据不一样就用前者,如果数据一样,那两者效果是一致的。
- 1
给你一个吻s
老师,插入或者更新 和 插入或者替换有什么区别吗? 在使用的时候怎么选择呢?