mysql中循环插入数据【存储过程的应用】

背景描述

测试需求:如上图,筛选按预约数排序靠前的机构,排名第51及之后的机构不显示。

 验证功能前,测试数据中至少有50个不同预约数,

实现方式:

1.或手工往数据库表中插入  ,50个机构下分别添加不同的预约数,要边添加、边记录预约数。

2.按某种规律生成数据,往数据库表中插入。

3.用sql语句循环写数据,(提前是找到规律)

---------------------------------------------------------------------------------------------------------------------

机构预约记录表 
id+1   用户id可以 不变      手机号可以不变           机构id (再给机构添加完预约数后,机构id要变化,即再给其他机构添加预约数)
1        623182                   15228*****64                     1            0        0        2018-06-14 18:33:44    2018-06-14 18:33:44


 

 

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
#DELIMITER #
CREATE PROCEDURE test_fi()
BEGIN
    DECLARE  id int default  2384;            #主键 #
    declare  institition_id int  default 978; #机构id#
    declare  num int  default 100;    #为N个机构创建预约记录,每个机构的预约数为N#
    declare  temp int default 0;      #temp被赋值为N,为机构创建N条预约数#
 
    #为N个机构创建预约记录,每个机构的预约数为N#
    while num>0 DO          
        SET temp=num;
        while temp>0 DO
            insert into reservation_apply values(id,'722619','13513111311',institition_id,'','',0,'',0,'','2018-6-30 14:47:51','2018-6-30 14:47:58');
            set id=id+1;
            SET temp=temp-1;           
        end WHILE;
        set num=num-5;
        SET institition_id = institition_id-5;
        END WHILE; 
 
END
 
CALL test_fi();
# insert into reservation_apply values(2224,'722619','13511111111',100,'','',0,'',0,'','2018-6-30 14:47:51','2018-6-30 14:47:55'); 运行结果是ok的#

 关于mysql的存储过程,这还是冰山一角,还要继续学习。

 

测试时按第1种方式造的数据,后期按第3种方式造数据,这个对比太明显了,省时省力多了。👍👍

 

----------------------------------------------------

http://www.w3school.com.cn/sql/index.asp   sql学习网站

posted @   幸福在今天  阅读(14319)  评论(0编辑  收藏  举报
编辑推荐:
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
阅读排行:
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· Manus的开源复刻OpenManus初探
· AI 智能体引爆开源社区「GitHub 热点速览」
· 从HTTP原因短语缺失研究HTTP/2和HTTP/3的设计差异
· 三行代码完成国际化适配,妙~啊~
点击右上角即可分享
微信分享提示