我正在尝试编写一个查询,该查询会将 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);