(1)如果有,则删除后再insert;如果没有,直接insert。
REPLACE INTO students (id, class_id, name, gender, score) VALUES (1, 1, '小明', 'F', 99);
若id=1的记录不存在,REPLACE语句将插入新记录,否则,当前id=1的记录将被删除,然后再插入新记录。
(2)如果有,就update;如果没有,就insert。
INSERT INTO students (id, class_id, name, gender, score) VALUES (1, 1, '小明', 'F', 99) ON DUPLICATE KEY UPDATE name='小明', gender='F', score=99;
若id=1的记录不存在,INSERT语句将插入新记录,否则,当前id=1的记录将被更新,更新的字段由UPDATE指定。
(3)如果有,则什么都不干;如果没有,则insert 插入新纪录。
INSERT IGNORE INTO students (id, class_id, name, gender, score) VALUES (1, 1, '小明', 'F', 99);
若id=1的记录不存在,INSERT语句将插入新记录,否则,不执行任何操作。
(4)快照:如果想要对一个表进行快照,即复制一份当前表的数据到一个新表,可以结合CREATE TABLE和SELECT。
CREATE TABLE students_of_class1 SELECT * FROM students WHERE class_id=1;
对class_id=1的记录进行快照,并存储为新表students_of_class1:新创建的表结构和SELECT使用的表结构完全一致。
(5)写入查询结果集:可以结合INSERT和SELECT,将SELECT语句的结果集直接插入到指定表中,确保INSERT语句的列和SELECT语句的列能一一对应。
INSERT INTO statistics (class_id, average) SELECT class_id, AVG(score) FROM students GROUP BY class_id;
(6)按天统计消息发送量:
Select DATE(a.send_time),count(1) as sendCount from t_msg a where a.catagoryId=#{cId} group by DATE(a.send_time) ;
因篇幅问题不能全部显示,请点此查看更多更全内容
Copyright © 2019- awee.cn 版权所有 湘ICP备2023022495号-5
违法及侵权请联系:TEL:199 1889 7713 E-MAIL:2724546146@qq.com
本站由北京市万商天勤律师事务所王兴未律师提供法律服务