沧海十一刀 2017-05-22 23:47 采纳率: 20%
浏览 5317
已结题

请教关于MySQL新增数据,不存在则新增,存在则更新的问题

问题描述:
一张表,id为主键,现在在数据库中插入数据,如果存在firstName、lastName相同的数据,则更新count,不存在这插入数据。
例如:已有数据中,已存在 firstName 为 Jack,lastName 为 Li 的数据,则原有数据不新增,只修改count。
我尝试过使用ON DUPLICATE KEY UPDATE函数,但是我发现这个函数貌似只能根据插入的数据中第一个字段做判断。
请高手们多多指点。

##建表

CREATE TABLE test (
id int(11) NOT NULL AUTO_INCREMENT,
firstName varchar(20) DEFAULT NULL,
lasetName varchar(20) DEFAULT NULL,
job varchar(255) DEFAULT NULL,
phone varchar(255) DEFAULT NULL,
count int(11) DEFAULT NULL,
PRIMARY KEY (id)
) ENGINE=InnoDB AUTO_INCREMENT=1 DEFAULT CHARSET=utf8;


插入数据:

INSERT INTO test (id, firstName, lasetName, job, phone, count) VALUES ('1', 'Jack', 'Chen', '演员', '110', 100);
INSERT INTO test (id, firstName, lasetName, job, phone, count) VALUES ('2', 'Jack', 'Li', '演员', '110', 200);


##删除表:

DROP TABLE test;


  • 写回答

6条回答 默认 最新

  • AngusFeng 2017-05-23 00:12
    关注

    围观,我们开发中都是先查询一下有没有这条数据,然后再做操作图片说明

    评论

报告相同问题?

悬赏问题

  • ¥15 MATLAB动图的问题
  • ¥15 求差集那个函数有问题,有无佬可以解决
  • ¥15 【提问】基于Invest的水源涵养
  • ¥20 微信网友居然可以通过vx号找到我绑的手机号
  • ¥15 寻一个支付宝扫码远程授权登录的软件助手app
  • ¥15 解riccati方程组
  • ¥15 display:none;样式在嵌套结构中的已设置了display样式的元素上不起作用?
  • ¥15 使用rabbitMQ 消息队列作为url源进行多线程爬取时,总有几个url没有处理的问题。
  • ¥15 Ubuntu在安装序列比对软件STAR时出现报错如何解决
  • ¥50 树莓派安卓APK系统签名