一、背景 最近公司项目添加新功能,上线后发现有些功能的列表查询时间很久。原因是新功能用到旧功能的接口,而这些旧接口的 SQL 查询语句关联5,6张表且编写不够规范,导致 MySQL 在执行 SQL 语句时索引失效,进行全表扫描。原本负责优化的同事有事请假回家,因此优化查询数据的问题落在笔者手中。笔者 ...
分类:
数据库 时间:
2020-05-03 11:03:08
阅读次数:
66
客户一个文件权限系统,对权限做了7种分类,读写等不带名字coder,分别定义了7条记录,所以,如果这个客户对某个目录或文件有权限最多的情况就会有7条记录。嗯嗯,coder用AOP做了权限校验,终于,这个系统上线了。嗯嗯,一个sql查询花了10s。嗯,客户说我们是吃屎的。。。我tmd太荣幸了。好吧,重... ...
分类:
其他好文 时间:
2020-05-02 15:16:11
阅读次数:
62
1、查询所有列 select *from emp;--*表示所有的,from emp表示从emp表中查询。 2、查询指定列 select empno,ename from emp; select 888 from emp;--ok,输出的行数是emp表的行数,每行只有一个字段,值是888。 sele ...
分类:
数据库 时间:
2020-05-01 20:38:02
阅读次数:
87
给定正整数N,返回小于等于N且至少具有1位重复数字的正整数。当时没想到思路,只想到有重复数位的数不好算,但是不含有重复数字的数的个数可以算,后来看了一个人的解答,用数位dp+排列可以做出来。大致分为两部分,设这个数字有k位,第一部分计算是数字不到k位的数且这些数每一位的数字不相同,第二部分是计算k位 ...
分类:
其他好文 时间:
2020-05-01 18:48:28
阅读次数:
100
常见的sql查询语句索引失效的情况 1、在索引列上使用函数。如SUBSTR,DECODE,INSTR等,对索引列进行运算.需要建立函数索引就可以解决了。 2、对索引列进行了加减乘除运算也会造成索引失效 3、基于cost的成本分析,访问的表过小,使用全表扫描的消耗小于使用索引。 4、使用<>、not ...
分类:
数据库 时间:
2020-05-01 01:19:20
阅读次数:
90
Hytrix官方的 第一部分是这里。熔断依赖命令来实现的 可以认为是线程的入口,所有需要Hytrix支持的内容 都必须要走 HystrixCommand、HystrixObservableCommand:只有这两种形式,没有其他可选的形式。除非你们继承它实现了自己的子类 第二部分 都是入口,这四个的 ...
分类:
其他好文 时间:
2020-04-30 21:32:22
阅读次数:
81
参考:http://blog.sina.com.cn/s/blog_9d63c31d0102uz10.html 一、什么是locale local:当地的、本地的;locale:发生地点、现场、区域、地区、地域。在linux系统中,locale是根据计算机使用者所使用的语言、所在的国家或地区,以及当 ...
分类:
编程语言 时间:
2020-04-30 12:01:11
阅读次数:
100
SQL Injection 1. 题目 SQL Injection,即SQL注入,是指攻击者通过注入恶意的SQL命令,破坏SQL查询语句的结构,从而达到执行恶意SQL语句的目的。 2. Low a. 代码分析 对来自客户端的参数id没有进行任何的检查与过滤,存在明显的SQL注入。 b. 漏洞利用 3 ...
分类:
其他好文 时间:
2020-04-30 11:39:17
阅读次数:
71
Spark SQL支持通过DataFrame接口在各种数据源上进行操作。DataFrame可以使用关系变换进行操作,也可以用来创建临时视图。将DataFrame注册为临时视图允许您对其数据运行SQL查询。本节介绍使用Spark Data Sources加载和保存数据的一般方法,然后介绍可用于内置数据 ...
分类:
其他好文 时间:
2020-04-29 10:49:26
阅读次数:
64
编写一个 SQL 查询,来删除?Person?表中所有重复的电子邮箱,重复的邮箱里只保留?Id?最小?的那个。 + + + | Id | Email | + + + | 1 | john@example.com | | 2 | bob@example.com | | 3 | john@example ...
分类:
数据库 时间:
2020-04-28 16:40:41
阅读次数:
58