(中等)SQL练习35:批量插入数据,不使用replace操作

Posted Dream丶Killer

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了(中等)SQL练习35:批量插入数据,不使用replace操作相关的知识,希望对你有一定的参考价值。

SQL练习35:批量插入数据,不使用replace操作

题目描述

题目已经先执行了如下语句:

drop table if exists actor;
CREATE TABLE actor (
   actor_id  smallint(5)  NOT NULL PRIMARY KEY,
   first_name  varchar(45) NOT NULL,
   last_name  varchar(45) NOT NULL,
   last_update  DATETIME NOT NULL);
insert into actor values ('3', 'WD', 'GUINESS', '2006-02-15 12:34:33');

对于表 actor 插入如下数据,如果数据已经存在,请忽略(不支持使用 replace 操作)

actor_idfirst_namelast_namelast_update
‘3’‘ED’‘CHASE’‘2006-02-15 12:34:33’

考察知识点

INSERT IGNORE

mysql 中插入数据的三种方式:

1️⃣ INSERT INTO :插入数据时会检查主键,如果出现重复会报错。

INSERT INTO actor VALUES('3', 'WD', 'GUINESS', '2006-02-15:24:34:33')

2️⃣ REPLACE INTO :插入替换数据,如果该条数据已经存在,则用新数据替换;如果不存在则直接插入。

REPLACE INTO actor VALUES('3', 'WD', 'GUINESS', '2006-02-15:24:34:33')

3️⃣ INSERT IGNORE:如果中已经存在相同的记录,则忽略当前新数据;


解题思路

题目出得很迷~,看半天发现就是考察 INSERT IGNORE 的用法。

INSERT IGNORE INTO actor VALUES('3', 'WD', 'GUINESS', '2006-02-15:24:34:33')

题目来源:牛客网-SQL数据库实战题

每日打卡,❤ 点个赞再走吧!!!❤


后续会继续分享 Mysql 方面的文章,如果感兴趣的话可以点个关注不迷路哦~。

以上是关于(中等)SQL练习35:批量插入数据,不使用replace操作的主要内容,如果未能解决你的问题,请参考以下文章

(中等)SQL练习36:创建一个actor_name表

mysql批量插入数据

第31天MYSQL进阶-写优化- 插入优化(SQL 小虚竹)

FreeSql 教程 (六)批量插入数据

sql 批量插入 insert

C#中的SQL批量插入不插入值