mysql时间复杂度_mysql插入多条数据时间复杂度比较

这篇博客探讨了在MySQL中使用两种不同方式插入多条数据的时间复杂度,通过实例展示方式一与方式二在执行效率上的显著差异,后者速度接近前者的10倍。文章还提及了批处理的可能性,鼓励读者研究JDBC批处理的源码以了解更多。
摘要由CSDN通过智能技术生成

SQL脚本

select * from users;

方式一:

insert into users(name, age, course_id) VALUES("test",1, "0");

insert into users(name, age, course_id) VALUES("test",1, "0");

insert into users(name, age, course_id) VALUES("test",1, "0");

insert into users(name, age, course_id) VALUES("test",1, "0");

insert into users(name, age, course_id) VALUES("test",1, "0");

insert into users(name, age, course_id) VALUES("test",1, "0");

insert into users(name, age, course_id) VALUES("test",1, "0");

insert into users(name, age, course_id) VALUES("test",1, "0");

insert into users(name, age, course_id) VALUES("test",1, "0");

insert into users(name, age, course_id) VALUES("test",1, "0");

insert into users(name, age, course_id) VALUES("test",1, "0");

insert into users(name, age, course_id) VALUES("test",1, "0");

insert into users(name, age, course_id) VALUES("test",1, "0");

insert into users(name, age, course_id) VALUES("test",1, "0");

insert into users(name, age, course_id) VALUES("test",1, "0");

insert into users(name, age, course_id) VALUES("test",1, "0");

insert into users(name, age, course_id) VALUES("test",1, "0");

insert into users(name, age, course_id) VALUES("test",1, "0");

insert into users(name, age, course_id) VALUES("test",1, "0");

insert into users(name, age, course_id) VALUES("test",1, "0");

insert into users(name, age, course_id) VALUES("test",1, "0");

insert into users(name, age, course_id) VALUES("test",1, "0");

insert into users(name, age, course_id) VALUES("test",1, "0");

insert into users(name, age, course_id) VALUES("test",1, "0");

方式二:

insert into users(name, age, course_id) VALUES("test",1, "0"),("test",1, "0"),("test",1, "0"),("test",1, "0"),

("test",1, "0"),("test",1, "0"),("test",1, "0"),("test",1, "0"),

("test",1, "0"),("test",1, "0"),("test",1, "0"),("test",1, "0"),

("test",1, "0"),("test",1, "0"),("test",1, "0"),("test",1, "0"),

("test",1, "0"),("test",1, "0"),("test",1, "0"),("test",1, "0"),

("test",1, "0"),("test",1, "0"),("test",1, "0"),("test",1, "0")

时间损耗

在插入上面24条数据的时候发现两者的执行效率相差比较大(近10倍的)

方式一:

b9cc42a59cf7392dc448dd2338349506.png

方式二:

1a3c3e0ad8b514bf5d0db6187d9f18ea.png

扩展:

那么jdbc中的批处理的内部实现是不是采用方式二的形式来实现呢?感兴趣的朋友可以查看下该部分的源码...

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值