MySQL数据存在更新不存在新增数据
Posted 知其黑、受其白
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了MySQL数据存在更新不存在新增数据相关的知识,希望对你有一定的参考价值。
阅读目录
mysql数据库
CREATE TABLE `subject` (
`subjectId` int NOT NULL AUTO_INCREMENT COMMENT '自增,科目编号',
`subjectName` varchar(50) NULL DEFAULT NULL COMMENT '科目名称',
PRIMARY KEY (`subjectId`) USING BTREE
) ENGINE = InnoDB COMMENT = '科目表';
1 存在就更新,不存在就新增
INSERT INTO `subject` (subjectId, subjectName)
VALUES ('7', '离散') ON DUPLICATE KEY UPDATE subjectName = '离散数学';
2 存在则不操作,不存在则新增
使用 insert…select…语句;
使用 dual 做表名可以让你在 select 语句后面直接跟上要插入字段的值,而且这些值还可以不存在当前表中。
INSERT INTO `subject` (subjectName) SELECT
'离散数学'
FROM
DUAL
WHERE
NOT EXISTS (
SELECT
subjectName
FROM
`subject`
WHERE
subjectName = '离散'
);
以上是关于MySQL数据存在更新不存在新增数据的主要内容,如果未能解决你的问题,请参考以下文章