如何从MySQL查询生成一系列连续数字(每行一个),以便可以将它们插入表中?
例如:
nr 1 2 3 4 5 我只想为此使用MySQL(不使用PHP或其他语言)。
如果您需要表中的记录,并且希望避免并发问题,请按照以下方法操作。
首先,您创建一个用于存储记录的表
CREATE TABLE incr
( Id
int(11) NOT NULL auto_increment, PRIMARY KEY (Id
) ) ENGINE=MyISAM DEFAULT CHARSET=utf8; 其次,创建一个存储过程,如下所示:
DELIMITER ;; CREATE PROCEDURE dowhile() BEGIN DECLARE v1 INT DEFAULT 5; WHILE v1 > 0 DO INSERT incr VALUES (NULL); SET v1 = v1 - 1; END WHILE; END;; DELIMITER ; 最后调用SP:
CALL dowhile(); SELECT * FROM incr; 结果
Id 1 2 3 4 5来源:stack overflow
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。