问题描述:
一张表,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;