
sql
文章平均质量分 78
「已注销」
这个作者很懒,什么都没留下…
展开
-
mybatis 中for循环
mybatis sql语句in 的用法List list=new ArrayList();参数 map.put("array",list);<foreach item="workcode" index="index" collection="array" open="(" separator="," close=")">原创 2018-08-03 11:17:23 · 28100 阅读 · 0 评论 -
oracle id 自增长
CREATE TABLE testTable1(ID INT NOT NULL,NAME VARCHAR2(4000) NOT NULL,PRIMARY KEY(ID))TABLESPACE MYDB; --创建自增ID,名称为:表名_字段名_SEQCREATE SEQUENCE testTable1_ID_SEQ MINVALUE 1 NOMAXVALUE INCREMENT...原创 2018-09-28 11:30:16 · 3079 阅读 · 0 评论 -
sql添加-删除-修改
添加字段的语法:alter table tablename add (column datatype [default value][null/not null],….);//被修改的字段需为null修改字段的语法:alter table tablename modify (column datatype [default value][null/not null],….);删除字段的...原创 2018-10-15 16:49:48 · 678 阅读 · 0 评论 -
PLSQL快速执行sql脚本
plsql选择 command window 输入 start D:\aa.sql 回车执行完毕,执行完成之后记得点击左上角的同步按钮原创 2018-10-25 08:51:17 · 18403 阅读 · 0 评论 -
oracle 常用sql
数据快速备份,非导出create table 备份表 as select * from 原表 ;insert into 备份表( select * from 原表 );commit;原创 2018-10-25 09:16:26 · 146 阅读 · 0 评论 -
SQL中EXISTS的用法
转载:https://blog.youkuaiyun.com/run65536/article/details/80679313 比如在Northwind数据库中有一个查询为SELECT c.CustomerId,CompanyName FROM Customers cWHERE EXISTS(SELECT OrderID FROM Orders o WHERE o.CustomerID=c.C...原创 2018-11-26 22:52:28 · 132 阅读 · 0 评论 -
读高性能Mysql---4--Schema与数据类型优化 有感
Schema与数据类型优化 选择优化的数据类型 1.更小的通常更好 占用更少磁盘,内存和CPU缓存,处理的CPU周期也更少2.简单就好 减少CPU操作周期,整型比子夫操作代价更低,3.尽量避免null null值对sql更难优化,null的列使得索引,索引统计和值得比较更为复杂,且null会使用更多存储空间; 为nul...原创 2018-11-28 11:57:06 · 178 阅读 · 1 评论 -
读高性能mysql感--5--索引
创建高性能的索引索引可以让服务器快速定位到表的位置,附加作用,B-Tree索引,按照顺序排序,所以mysql可以 order by 和group by操作。因为数据是有序的,所以B-TREE也会将相关列值都存储在一起。索引中存储了实际的列值索引使用索引就能完成全部查询。 总结索引的优点: 1.索引大大减少服务器扫描的数据量 ...原创 2018-12-01 00:15:22 · 166 阅读 · 0 评论 -
MYSQL优化理论篇
Mysql高手是怎样炼成的?1.数据库内部结构和原理2.数据库建模优化3.数据库索引建立3.SQL语句优化4.SQL编程5.mysql服务器的安装配置6.数据库的监控分析与系统优化7.各种参数常量设定8.主从复制9.分布式架构搭建 ,垂直切割和水平切割10.数据迁移11.容灾备份和恢复11.shell和Python等脚本语言开发12.对开源数...原创 2018-12-17 21:35:34 · 148 阅读 · 0 评论 -
逆向工程生成的Example类的使用
二.Example类的使用Example类的成员: //升序还是降序:字段+空格+asc(desc) protected String orderByClause; //去除重复:true是选择不重复记录,false,反之 protected boolean distinct; //自定义查询条件 protected List<C...原创 2018-09-26 13:53:16 · 2300 阅读 · 0 评论 -
MySQL高级知识(十一)——Show Profile
前言:Show Profile是mysql提供的可以用来分析当前会话中sql语句执行的资源消耗情况的工具,可用于sql调优的测量。默认情况下处于关闭状态,并保存最近15次的运行结果。1.分析步骤#1.开启Show Profile功能,默认该功能是关闭的,使用前需开启。#2.根据MySQL高级知识(十)——批量插入数据脚本中的数据脚本向tb_emp_bigdata表中插入50w...转载 2018-09-09 10:25:33 · 217 阅读 · 0 评论 -
MySQL高级知识(十)——批量插入数据脚本
前言:使用脚本进行大数据量的批量插入,对特定情况下测试数据集的建立非常有用。0.准备#1.创建tb_dept_bigdata(部门表)。create table tb_dept_bigdata(id int unsigned primary key auto_increment,deptno mediumint unsigned not null default 0,dn...转载 2018-09-09 10:23:32 · 2564 阅读 · 0 评论 -
mysql优化
参考 1.https://www.jb51.net/article/136701.htm 创建索引 1. CREATE INDEX index_name ON table_name(clunm1,clunm2); 创建组合索引,(前缀索引,前缀必须存在)2. CREATE INDEX index_name ON table_name(clunm1); 单列索引概念: ...原创 2018-09-05 23:53:31 · 128 阅读 · 0 评论 -
MySQL高级知识(八)——ORDER BY优化
转载:http://www.cnblogs.com/morewindows0/p/9225638.html前言:在使用order by时,经常出现Using filesort,因此对于此类sql语句需尽力优化,使其尽量使用Using index。0.准备#1.创建test表。drop table if exists test;create table test(id in...转载 2018-09-09 08:31:27 · 472 阅读 · 1 评论 -
MySQL高级知识(十六)—— 多表查询 小表驱动大表
1.为什么要小表驱动大表呢类似循环嵌套for(int i=5;.......){ for(int j=1000;......) {}}如果小的循环在外层,对于数据库连接来说就只连接5次,进行5000次操作,如果1000在外,则需要进行1000次数据库连接,从而浪费资源,增加消耗。这就是为什么要小表驱动大表。总结下面结论都是针对in或exists的...转载 2018-09-09 09:16:29 · 796 阅读 · 0 评论 -
MySQL高级知识(二)——Join查询
转载 https://www.cnblogs.com/morewindows0/p/9207687.html前言:该篇主要对MySQL中join语句的七种情况进行总结。0.准备join主要根据两表或多表之间列的关系,从这些表中进行数据的查询。首先创建两张表:tb_emp(员工表)和tb_dept(部门表),并插入相关测试数据。1.tb_emp表。 DROP TABL...转载 2018-09-09 09:25:54 · 184 阅读 · 0 评论 -
MySQL高级知识(三)——索引
前言:索引在sql调优部分占据着重要的位置,了解并深入索引对我们来说也是非常重要的。本篇主要介绍MySQL中索引的相关知识点。1.索引是什么MySQL官方对索引的定义:索引(Index)是帮助MySQL高效获取数据的数据结构。因此索引的本质就是数据结构。索引的目的在于提高查询效率,可类比字典、书籍的目录等这种形式。可简单理解为“排好序的快速查找数据结构”。在数据之外,数据库系统还...转载 2018-09-09 09:35:05 · 228 阅读 · 0 评论 -
MySQL高级知识(四)——Explain
前言:explain(执行计划),使用explain关键字可以模拟优化器执行sql查询语句,从而知道MySQL是如何处理sql语句。explain主要用于分析查询语句或表结构的性能瓶颈。注:本系列随笔如无特殊说明都MySQL版本都为5.7.22。1.explain的作用通过explain+sql语句可以知道如下内容:①表的读取顺序。(对应id)②数据读取操作的操作类型。(...转载 2018-09-09 09:42:48 · 3095 阅读 · 3 评论 -
MySQL高级知识(五)——索引分析
前言:前面已经学习了explain(执行计划)的相关知识,这里利用explain对索引进行优化分析。0.准备首先创建三张表:tb_emp(职工表)、tb_dept(部门表)和tb_desc(描述表)1)tb_emp表。 DROP TABLE IF EXISTS `tb_emp`;CREATE TABLE `tb_emp` ( `id` int(11) NOT NU...转载 2018-09-09 09:51:41 · 135 阅读 · 0 评论 -
MySQL高级知识(六)——索引优化
前言:索引优化的目的主要是让索引不失效,本篇通过相关案例对索引优化进行讲解。0.准备创建经典的tb_emp表。DROP TABLE IF EXISTS `tb_emp`;CREATE TABLE `tb_emp` ( `id` int(11) NOT NULL AUTO_INCREMENT, `name` varchar(20) NOT NULL, `age`...转载 2018-09-09 09:56:50 · 1657 阅读 · 2 评论 -
MySQL高级知识(九)——慢查询日志
前言:慢查询日志是MySQL提供的一种日志记录,它记录MySQL中响应时间超过阈值的语句,具体指运行时间超过long_query_time值的sql语句,该sql语句会被记录到慢查询日志中。慢查询日志主要与explain进行联合分析。1.如何开启慢查询日志默认情况下,MySQL数据库没有开启慢查询日志,需要我们手动来设置这个参数。如果不是调优需要,一般不建议开启该参数,因为开启慢查询...转载 2018-09-09 10:21:37 · 180 阅读 · 0 评论 -
MYSQL优化原理和执行计划分析(一)
索引基础性能下降SQL慢执行时间长等待时间长 查询数据过多 (能不能拆,条件过滤尽量少) 关联了太多的表,太多join (join 原理。用 A 表的每一条数据 扫描 B表的所有数据。所以尽量先过滤,IO数量大) 没有用到索引(索引针对 列 建索引。但并不可能每一列都建索引 索引并非越多越好。当数据更新了,索引会进行调整。也会很消耗性能。 且 mysql 并...原创 2018-12-18 00:04:35 · 1082 阅读 · 0 评论