![](https://img-blog.csdnimg.cn/20201014180756738.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
数据库
VV爱吃肉爱写码
作个温缓纯良的程序媴
展开
-
sql 关键字执行顺序
结论结论先行,顺序如下展示:(1)from(2) join(3)on(4)where(5)group by(6)avg,sum....(7)having(8)select(9)distinct(10)order by(11)top背景一条sql 脚本为什么会有顺序的问题?其实就是大家看待问题的粒度不同。在sql的执行过程中,每一关键字的执行都会产出一个【虚拟表】,虚拟表作为下一级处理的输入。验证方法关键字AS 推理关键字 AS 就是在 执行的...原创 2020-05-15 09:41:07 · 367 阅读 · 0 评论 -
(转)一条sql执行顺序
版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。本文链接:https://blog.csdn.net/qq_25186987/article/details/54311384收起理解sql语句的执行顺序对优化sql非常重要,那么sql语句的执行顺序是怎样的呢,以一条简单的的语句做分析:这一条语句包含我们经常用到的一些关键字,select,from,where,group by,order by,它的执行顺序如下:...转载 2020-05-15 09:11:29 · 181 阅读 · 0 评论 -
sqlalchemy数据库连接异常
遇到这种情况,小记一下。发现服务运行得好好的,连接数据库的时候隔一段时间就会报数据库连接异常,看了一下日志报一个“error during Connection reset by peer”——报错十分直观 ,就是数据库主动断开了连接。查询发现sqlserver设置了X分钟的超时时间,如果超过这个时间数据库连接线程没有任何操作,sqlserver会主动把连接断开以节约资源。所以,如果数据库...原创 2019-10-24 10:33:05 · 1332 阅读 · 0 评论 -
jdbc连接不同数据库的配置
主要是url部分不同url写法如下sqlserverurl = jdbc:sqlserver://localhost:1433;DatabaseName=mydbmysqlurl = jdbc:mysql://localhost/myDB?db2url = jdbc:db2://localhost:5000/masteroracleurl = jdbc:...原创 2019-08-06 22:04:15 · 481 阅读 · 0 评论 -
dbmonster连接sqlserver
目录dbmonster介绍写的理由配置dbmonster的前提下载dbmonster配置dbmonster步骤dbmonster.properties配置dbmonster-schema.xml配置配置环境变量CLASSPATH官方文档官方文档主要查看点列类型dbmonster介绍什么是dbmonsterdbmonster是用来造大量数据库数...原创 2019-08-06 21:41:26 · 272 阅读 · 0 评论 -
sqlserver 分页方法
本文分别介绍三种sqlserver分页方式。并开启statistics做为统计。开启统计:--清理DBCC DROPCLEANBUFFERSDBCC FREEPROCCACHE--开启统计信息SET STATISTICS TIME ONSET STATISTICS IO ON使用top方法一:优点:通用,第一页可以直接把第二个数字2设置为0即可。统计结果表明,主要的...原创 2019-07-06 22:07:26 · 5276 阅读 · 0 评论 -
sqlserver 查看脚本执行时间
方法一:--开启统计信息SET STATISTICS TIME ONSET STATISTICS IO ONGO select * from XXX --这里写执行的脚本,没有分号GO执行后在输出的消息体里查看:占用时间:当前这一步的总时间。如果占用时间比CPU时间大很多,那开销主要用于IO上。逻辑读:从数据缓存读取的页数。数字越小,性能越好。在性能调优中这个数字...原创 2019-07-06 21:07:08 · 2526 阅读 · 0 评论 -
sqlserver 死锁监控
sqlserver日志默认没有记录死锁的。所以如果没有提前配置监控的情况下,你无法找到死锁的日志进行定位。所以大家有时候会看到别人文章里写什么事务日志,扩展事件等方式去查找历史的sqlserver出现的死锁原因这是没有办法的。所以,提前配置死锁监控很重要。死锁监控配置(1)sqlserver日志监控打开1222和1204跟踪,这样子死锁的信息会记录在error log中。这样子可以...原创 2019-06-07 22:32:42 · 4050 阅读 · 0 评论 -
聚集索引与非聚集索引
索引能提高速度的原因是找到待搜索数据范围的开始和结束位置,然后根据头尾把中间的数据快速的取出来。索引其实是把查询语句所需要的少量数据添加到索引分页中,查询的时候通过访问少量的索引分页就可以到可以快速的确定搜索数据范围的开始和结束位置。索引存在的目的是在大量数据中找寻少量数据时,提高查询速度。查询!查询!查询!所以试图用索引增加IUD(insert\update\delete)操作效率的人就把枕...原创 2019-05-29 17:31:38 · 301 阅读 · 0 评论 -
sqlserver 执行计划
一个很好的手册分享,执行计划里的属性解释官方文档:https://docs.microsoft.com/zh-cn/sql/relational-databases/showplan-logical-and-physical-operators-reference?view=sql-server-2017想复杂的事情简单说,在看执行计划的其他文章的时候,发现直接上很复杂的DDL脚本来讲解,这样...原创 2019-05-31 16:24:28 · 4531 阅读 · 0 评论 -
sqlserver implict_transactions
什么是implict_transactionsimplict_transactions是指sqlserver帮你把所有的DDL脚本自动封装成事务。不需要你显式写BEGIN TRAN关键字来指明事务。这里有一个很有意思的文档,写的很有趣:http://www.msbiguide.com/implicit-transactions-in-sql-server/开启implict_tr...原创 2019-06-05 10:55:47 · 433 阅读 · 0 评论 -
sqlserver latch
什么是bool poolsqlserver运行内存分为两类,一类是bool pool;一类是非bool pool.开发人员只需要关注一点,bool pool是内存区域即可。pin与spinpinpin是对对象内容的请求。可以与get一起理解 ,get是对对象的请求。举例有一个蛋糕切成8块,对某个蛋糕的请求就是get,而对申请到的蛋糕具体的哪一块就是pin。spin中...原创 2019-05-30 17:30:42 · 1069 阅读 · 0 评论