[英]merge a insert/select statement into one? mysql
有没有办法使这一陈述成为一体? 基本思想是插入一个标记名(如果它不存在),并为我的下一条语句检索主键。 标题栏是唯一的。
INSERT INTO `tag_name` (`count`, `title`)
SELECT 0, @title FROM DUAL
WHERE not exists
(SELECT * FROM `tag_name` WHERE `title` = @title LIMIT 1);
如果行影响> 0,则使用last_insert_rowid(),否则运行此语句
SELECT id from FROM `tag_name` WHERE `title` = @title
---这是一个测试
CREATE TABLE test (id INT NOT NULL AUTO_INCREMENT PRIMARY KEY, data int unique);
//insert into test(data) select 5;
您可以使用
insert into ... on duplicate update
这是插入行,当密钥重复时更新它。您也可以使用:
insert into on duplicate update field1=field1
这将忽略重复!
您可以使用MySql特定的Replace语法。 在此处查看更多信息。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.