gpt4 book ai didi

mysql - 将插入/选择语句合并为一个?数据库

转载 作者:行者123 更新时间:2023-11-30 23:54:26 27 4
gpt4 key购买 nike

有没有办法把这个语句合二为一呢?基本思想是插入一个标签名称(如果它不存在)并为我的下一个语句检索主键。 title 列是唯一的。

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 - 将插入/选择语句合并为一个?数据库,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3977284/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com