摘要:
SQL总结(五)存储过程 概念 存储过程(Stored Procedure):已预编译为一个可执行过程的一个或多个SQL语句。 创建存储过程语法 CREATE proc | procedure procedure_name [{@参数数据类型} [=默认值] [output], {@参数 阅读全文
posted @ 2018-06-11 18:09
星朝
阅读(258)
评论(0)
推荐(0)
摘要:
上一篇文章《万字总结:学习MySQL优化原理,这一篇就够了!》文末给大家留有两个开放的问题: 有非常多的程序员在分享时都会抛出这样一个观点:尽可能不要使用存储过程,存储过程非常不容易维护,也会增加使用成本,应该把业务逻辑放到客户端。既然客户端都能干这些事,那为什么还要存储过程? JOI 阅读全文
posted @ 2018-06-11 17:35
星朝
阅读(466)
评论(0)
推荐(0)
摘要:
一、一个例子 数据库需要处理的行数: 189444 1877 13482~~~479亿 如果在关联字段上加上合适的索引: 数据库需要处理的行数:368006 1 3 1~~~110万 MySQL通常是一个请求对应一个线程,其thread_handling是one thread per connect 阅读全文
posted @ 2018-06-11 16:36
星朝
阅读(1571)
评论(0)
推荐(0)
摘要:
SQL优化的思路: 1.优化更需要优化的sql; 2.定位优化对象的性能瓶颈:优化前需了解查询的瓶颈是IO还是CPU,可通过PROFILING很容易定位查询的瓶颈。 3.明确优化目标; 4.从Explain入手; 5.多使用profile; 阅读全文
posted @ 2018-06-11 16:35
星朝
阅读(4327)
评论(0)
推荐(0)
摘要:
说起MySQL的查询优化,相信大家收藏了一堆奇淫技巧:不能使用SELECT 、不使用NULL字段、合理创建索引、为字段选择合适的数据类型….. 你是否真的理解这些优化技巧?是否理解其背后的工作原理?在实际场景下性能真有提升吗?我想未必。因而理解这些优化建议背后的原理就尤为重要,希望本文能让你重新审视 阅读全文
posted @ 2018-06-11 16:26
星朝
阅读(338)
评论(0)
推荐(1)
摘要:
一、用SQL自连接查询处理列之间的关系 SQL自身连接,可以解决很多问题。下面举的一个例子,就是使用了SQL自身连接,它解决了列与列之间的逻辑关系问题,准确的讲是列与列之间的层次关系。SQL代码如下: 1 SELECT FIRST.CNumber, SECOND.PCNumber 2 FROM Co 阅读全文
posted @ 2018-06-11 15:56
星朝
阅读(15490)
评论(0)
推荐(1)
摘要:
一、问题的提出 在应用系统开发初期,由于开发数据库数据比较少,对于查询SQL语句,复杂视图的的编写等体会不出SQL语句各种写法的性能优劣,但是如果将应用 系统提交实际应用后,随着数据库中数据的增加,系统的响应速度就成为目前系统需要解决的最主要的问题之一。系统优化中一个很重要的方面就是SQL 阅读全文
posted @ 2018-06-11 15:48
星朝
阅读(403)
评论(0)
推荐(0)
摘要:
地址:http://code.google.com/p/thumbnailator/ 1、指定大小进行缩放 //size(宽度, 高度) / 若图片横比200小,高比300小,不变 若图片横比200小,高比300大,高缩小到300,图片比例不变 若图片横比200大,高比300小,横缩小到200,图片 阅读全文
posted @ 2018-06-11 15:27
星朝
阅读(565)
评论(0)
推荐(0)
摘要:
Thumbnailator是一款不可多得的处理图片的第三方工具包,它写法简单到让人无法相信,Java本身也有处理图片压缩的方法,但是代码冗长到让人痛不欲生,在篇末会给出Java本身的实现方式,做下对比,已体现Thumbnailator的强大。前段时间做分期的一种相对简单的业务,需要传递用户的身份信息 阅读全文
posted @ 2018-06-11 15:23
星朝
阅读(11562)
评论(3)
推荐(1)
摘要:
//假设一个for循环 for($i = 0; $i < 10000; $i++) { for ($j = 0; $i < 50; $j++) { } } for($i = 0; $i < 50; $i++) { for ($j = 0; $i < 10000; $j++) 阅读全文
posted @ 2018-06-11 15:10
星朝
阅读(723)
评论(0)
推荐(0)
摘要:
本文不涉及复杂的底层数据结构,通过explain解释SQL,并根据可能出现的情况,来做具体的优化,使千万级表关联查询第一页结果能在2秒内完成(真实业务告警系统优化结果)。 需要优化的查询:使用explain 出现了Using 阅读全文
posted @ 2018-06-11 15:09
星朝
阅读(504)
评论(0)
推荐(0)
摘要:
一、为什么要用小表驱动大表 1、驱动表的定义 当进行多表连接查询时, [驱动表] 的定义为: 1)指定了联接条件时,满足查询条件的记录行数少的表为[驱动表] 2)未指定联接条件时,行数少的表为[驱动表](Important!) 忠告:如果你搞不清楚该让谁做驱动表、谁 join 谁,请让 MySQL 阅读全文
posted @ 2018-06-11 15:08
星朝
阅读(2843)
评论(0)
推荐(1)
摘要:
写在前面 1、不要求每个人一定理解 联表查询(join/left join/inner join等)时的mysql运算过程 2、不要求每个人一定知道线上(现在或未来)哪张表数据量大,哪张表数据量小 3、但把mysql客户端(如SQLyog,如HeidiSQL)放在桌面上,时不时拿出来 explain 阅读全文
posted @ 2018-06-11 14:41
星朝
阅读(1220)
评论(0)
推荐(0)
摘要:
本教程对jetbrains全系列可用例:IDEA、WebStorm、phpstorm、clion等因公司的需求,需要做一个爬取最近上映的电影、列车号、航班号、机场、车站等信息,所以需要我做一个爬虫项目,当然java也可以做爬虫,但是还是没有python这样方便,所以也开始学习Python啦!!!欲善 阅读全文
posted @ 2018-06-11 14:22
星朝
阅读(2541)
评论(0)
推荐(0)
摘要:
最近没怎么搞SQL优化,碰巧数据库被慢查询搞挂了,于是拿来练练手。 问题 通过「SHOW FULL PROCESSLIST」语句很容易就能查到问题SQL,如下: SELECT post. FROM post INNER JOIN post_tag ON post.id = post_tag.post 阅读全文
posted @ 2018-06-11 10:24
星朝
阅读(444)
评论(0)
推荐(0)