gpt4 book ai didi

mysql - 为什么这个 IF NOT EXISTS 语句不起作用?

转载 作者:行者123 更新时间:2023-11-29 00:33:26 28 4
gpt4 key购买 nike

我正在尝试编写一个查询,它将 0 到 9999 之间的随机值插入到表中,而该随机值尚不存在。但是,我写的任何东西都不起作用。似乎 WHERE 子句不适用于 INSERT,并且我的 SQL 服务器无法执行 IF NOT EXISTS 查询。我想知道这是不正确的吗?我应该怎么办?我的问题有解决方案吗?(我正在使用 MySQL)

SET @rand = ROUND(RAND() * 9999);
IF NOT EXISTS (SELECT `num` FROM `nums` WHERE `num` = @rand)
INSERT INTO `nums` (`num`) VALUES (@rand);

最佳答案

你可以像这里一样做:MySQL: Insert record if not exists in table

INSERT INTO `nums` (`num`)
SELECT *
FROM
(SELECT @rand) AS q
WHERE NOT EXISTS
(SELECT `num`
FROM `nums`
WHERE `num` = @rand);

关于mysql - 为什么这个 IF NOT EXISTS 语句不起作用?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15476851/

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