社区
MySQL
帖子详情
有关SQL时间复杂度的问题,请指教。
Guizhi
2008-05-15 11:40:15
怎么估算出每个SQL语句的时间复杂度呢?
例如,有两个表 t1, t2, t1里有 100W数据,t2 里有20W数据,两者必须通过关键字 id来查询,能否估算出这个语句的时间复杂度呢???
select t1.*, t2.name
from t1, t2
where t1.id = t2.id
...全文
303
8
打赏
收藏
有关SQL时间复杂度的问题,请指教。
怎么估算出每个SQL语句的时间复杂度呢? 例如,有两个表 t1, t2, t1里有 100W数据,t2 里有20W数据,两者必须通过关键字 id来查询,能否估算出这个语句的时间复杂度呢??? select t1.*, t2.name from t1, t2 where t1.id = t2.id
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
8 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
declspec
2011-07-01
打赏
举报
回复
顶,看看几位大牛怎么解释
yangxiao_jiang
2008-05-21
打赏
举报
回复
Ot = Nt1 * Nt2 如果没有索引
这个是你需要对两个表进行全表扫描,相当于进行了两个欠套循环,所以是*
如果有索引
Ot = Nt2 * Log2(Nt1),
是对第一个表进行扫描,使用索引,一般索引都是树结构,时间复杂度就是log2(nt1),整体的就是Nt2 * Log2(Nt1)
如果在不明白,去找本数据结构的书看看怎么计算时间复杂度。
sunday_bj
2008-05-21
打赏
举报
回复
时间复杂度?看不明白
Guizhi
2008-05-21
打赏
举报
回复
还是不是太懂,能具体说说,这怎么来的吗?
xbt746
2008-05-16
打赏
举报
回复
[Quote=引用 2 楼 liuyann 的回复:]
时间复杂度
Ot = Nt1 * Nt2 如果没有索引
====思想重于技巧====
reply via CSDN viewer
[/Quote]
liuyann
2008-05-16
打赏
举报
回复
时间复杂度
如果有索引
Ot = Nt2 * Log2(Nt1), 如果考虑mySQL的索引具体方式,理论上会更小一些,但只是估算用这个就行了。
=
=
=
=
思
想
重
于
技
巧
=
=
=
=
reply via CSDN viewer
liuyann
2008-05-16
打赏
举报
回复
时间复杂度
Ot = Nt1 * Nt2 如果没有索引
=
=
=
=
思
想
重
于
技
巧
=
=
=
=
reply via CSDN viewer
懒得去死
2008-05-16
打赏
举报
回复
1、先用规划器看一下扫描的行数。
2、运行时间可以加上 where 0.忘了怎么算时间复杂度了。
性能测试分析【慢
SQL
分析】慢日志设置+慢
SQL
分析工具
通过慢
sql
分析的学习,了解什么是慢
sql
,以及慢
SQL
会引起那些性能
问题
。清楚慢
sql
日志的设置,然后再通过慢
sql
分析工具的学习,清楚慢
sql
分析的步骤和流程。慢
sql
分析工具:my
sql
dumpslow工具、explain工具、profile工具、Optimizer Trace工具。 提供课程中所使用的
sql
语句。 课程内容:第一章:课程简介1、课程介绍2、课程大纲 第二章:慢
sql
简介1、慢
sql
简介2、慢
sql
会引起的
问题
第三章:慢日志的设置1、慢
sql
的分析流程2、慢日志参数理解3、慢日志参数设置:第1种方式:my.ini文件设置4、慢日志参数设置:第2种方式:
sql
脚本设置5、慢日志参数设置-效果验证 第四章:如何发现慢
sql
1、如何发现慢
sql
:第1种方式:慢日志文件2、如何发现慢
sql
:第2种方式:my
sql
库的slow_log表 第五章:慢
sql
分析工具1、慢
sql
提取-my
sql
dumpslow工具-使用方法2、慢
sql
提取-my
sql
dumpslow工具-操作实战3、慢
sql
的执行计划分析-explain分析-执行计划结果说明4、慢
sql
的执行计划分析-explain分析-索引介绍+type类型举例5、慢
sql
的资源开销分析-profile分析-分析步骤6、慢
sql
的资源开销分析-profile分析-show profile执行阶段说明7、慢
sql
的资源开销分析-profile分析-完整列表说明+操作实战8、慢
sql
的跟踪分析-Optimizer Trace分析-分析步骤9、慢
sql
的跟踪分析-Optimizer Trace表的介绍10、索引失效场景举例 第六章:慢日志清理1、慢日志清理
SQL
开发中容易忽视的一些小地方(二)
原文:
SQL
开发中容易忽视的一些小地方(二) 目的:继上一篇:
SQL
开发中容易忽视的一些小地方(一) 总结
SQL
中的null用法后,本文我将说说表联接查询. 为了说明
问题
,我创建了两个表,分别是学生信息表(student),班级表(classInfo).相关字段说明本人以
SQL
创建脚本说明: 测试环境:
SQL
2005 CREATE TABLE [d...
Sql
Server中视图、存储过程、事务的使用。
前言 正文 视图-VIEW VIEW介绍 VIEW使用 存储过程-SP 介绍 使用 事务-Transaction Transaction介绍 使用 Transaction种类 总结 如有错误
请
指教
提前致谢前言熟悉
Sql
Server中视图、存储过程、事务的使用会在操作数据时带来更大的方便。正文视图-VIEWVIEW介绍 定义: 视图(VIEW)虚拟表,一般是不存储数据的,但是
Sql
server的索
Sql
Server 算法 :Nested Loops Join(嵌套连接)
自测试示例, 两表 都没有 建立索引 情况: start 1.
sql
语句通过 nested loop 连接, 2. 默认 hash join //end------------------------------------------------------------------- 说明:最近找到了一个不错的国外的博客http://blogs.msdn...
Nested Loops Join(嵌套连接) ,优化inner join的查询速度
说明:最近找到了一个不错的国外的博客http://blogs.msdn.com/b/craigfr/,博主是
Sql
Server的开发人员,写了很多
Sql
Server的内部原理性的文章,觉得非常有收获。所以试着把他翻译成中文,因为本人的英语和技术水平有限,难免会有错误,还
请
各位看官批评
指教
。 Nested Loops Join(嵌套连接)
Sql
Server支持三种物理连接:neste
MySQL
56,679
社区成员
56,709
社区内容
发帖
与我相关
我的任务
MySQL
MySQL相关内容讨论专区
复制链接
扫一扫
分享
社区描述
MySQL相关内容讨论专区
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章