我是靠谱客的博主 耍酷云朵,最近开发中收集的这篇文章主要介绍mysql循环插入数据拼接_mysql循环插入数据、生成随机数及CONCAT函数,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

实现目标:一年12个月,每个月插入一条数据,score为1-5的随机数

循环语句: WHILE …… DO …… END WHILE

DELIMITER ;

CREATE PROCEDURE test_insert()

BEGIN

DECLARE y TINYINT DEFAULT 1;

WHILE y<13

DO

INSERT INTO app_sign(`user_id`, `score`, `createdate`)

VALUES ('1', FLOOR( 1 + RAND() * 5), CONCAT('2018-',CAST(y AS CHAR),'-07') );

SET y=y+1;

END WHILE ;

COMMIT;

END;

CALL test_insert();

DROP PROCEDURE IF EXISTS test_insert;

循环语句: REPEAT …… UNTIL …… END REPEAT

DELIMITER ;

CREATE PROCEDURE test_insert()

BEGIN

DECLARE y TINYINT DEFAULT 1;

REPEAT

INSERT INTO app_sign(`user_id`, `score`, `createdate`)

VALUES ('1', FLOOR( 1 + RAND() * 5), CONCAT('2018-',CAST(y AS CHAR),'-07') );

SET y=y+1;

UNTIL y >= 12

END REPEAT;

COMMIT;

END;

CALL test_insert();

DROP PROCEDURE IF EXISTS test_insert;

循环语句: LOOP……END LOOP

DELIMITER ;

CREATE PROCEDURE test_insert()

BEGIN

DECLARE y TINYINT DEFAULT 1;

lp:LOOP

INSERT INTO app_sign(`user_id`, `score`, `createdate`)

VALUES ('1', FLOOR( 1 + RAND() * 5), CONCAT('2018-',CAST(y AS CHAR),'-07') );

SET y=y+1;

IF y > 12 THEN

LEAVE lp;

END IF;

END LOOP;

COMMIT;

END;

CALL test_insert();

DROP PROCEDURE IF EXISTS test_insert;

生成随机数

生成0-5的随机数

SELECT RAND() * 5

最大不会超过5,SELECT FLOOR(RAND() * 5)生成整数的值是0,1,2,3,4。

生成的随机整数是1,2,3,4,5的话,语句如下

SELECT FLOOR(1 + RAND()*5)

CONCAT拼接字符串

CONCAT(str1,str2,…)

返回结果为连接参数产生的字符串。如有任何一个参数为NULL ,则返回值为 NULL。

最后

以上就是耍酷云朵为你收集整理的mysql循环插入数据拼接_mysql循环插入数据、生成随机数及CONCAT函数的全部内容,希望文章能够帮你解决mysql循环插入数据拼接_mysql循环插入数据、生成随机数及CONCAT函数所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(51)

评论列表共有 0 条评论

立即
投稿
返回
顶部