
MySQL
文章平均质量分 61
MySQL
齐大圣2012
这个作者很懒,什么都没留下…
展开
-
MySQL【汇总】
原理篇使用篇优化篇sql语句优化的13中方法: https://mp.weixin.qq.com/s/LZvquOfHRfJQ7n0UGbBj9w原创 2019-05-10 13:51:02 · 213 阅读 · 0 评论 -
【一】PowerDesigner16.5入门
1:入门级使用PowerDesigner软件创建数据库(直接上图怎么创建,其他的概念知识可自行学习)我的PowerDesigner版本是16.5的,如若版本不一样,请自行参考学习即可。(打开软件即是此页面,可选择Create Model,也可以选择Do  Not  Show page Again,自行在打开软件后创建也可以!完全看个人的喜好,在此我在后面的学习中不在显示此页面...原创 2021-01-21 19:08:28 · 4834 阅读 · 3 评论 -
【二】PowerDesigner16.5 设置表
一、设置表的存储引擎和编码格式1、打开DataBase中的Edit Current DBMS,如下图2、找到Scrip – Object --Table-- Options。将ENGINE = %s : list = BDB | HEAP | ISAM | InnoDB | MERGE | MRG_MYISAM | MYISAM, default = InnoDBDEFAULT CHAR...原创 2021-01-21 19:08:51 · 1218 阅读 · 0 评论 -
数据库连接池【汇总】
数据库连性池性能测试(hikariCP,druid,tomcat-jdbc,dbcp,c3p0)https://www.tuicool.com/articles/qayayiMspringboot 2.0 使用Hikari连接池(号称java平台最快的,替换druid)https://blog.youkuaiyun.com/wangh92/article/details/79699172springB...原创 2019-06-14 11:15:26 · 322 阅读 · 0 评论 -
【MySQL】 语法顺序和执行顺序
一、Mysql语法顺序(写sql的关键字顺序)select [distinct]fromjoin(如left join)onwheregroup byhavingunionorder bylimit二、Mysql执行顺序(在数据库底层执行时sql按照下面的顺序进行执行)fromonjoinwheregroup byhavingselectdistinctu...转载 2018-12-14 10:18:54 · 3300 阅读 · 0 评论 -
【MySQL】 sql语句大全
转自:https://www.cnblogs.com/yunf/archive/2011/04/12/2013448.html1、创建数据库CREATE DATABASE database-name2、删除数据库drop database dbname3、备份sql server--- 创建 备份数据的 deviceUSE masterEXEC sp_addumpdevice ...转载 2018-12-17 23:40:57 · 687 阅读 · 0 评论 -
【MySQL】 常用的控制台命令
转自:https://www.cnblogs.com/shenqz/p/6962493.html进入mysql输入密码mysql -u root -p1、MySQL常用命令// 创建数据库create database name; // 选择数据库use databasename; // 直接删除数据库,不提醒drop database name; // 显示表sho...转载 2018-12-13 11:46:25 · 796 阅读 · 0 评论 -
【MySQL】inner join 与 left join 的区别
转自:https://www.cnblogs.com/pcjim/articles/799302.htmlleft join(左联接) 返回包括左表中的所有记录和右表中联结字段相等的记录 right join(右联接) 返回包括右表中的所有记录和左表中联结字段相等的记录inner join(等值连接) 只返回两个表中联结字段相等的行举例如下:---------------------...转载 2018-12-10 13:57:12 · 707 阅读 · 0 评论 -
创建索引、修改索引、删除索引的命令语句
查看表中已经存在 index:show index from table_name;索引命名规则普通索引名:IDX_table_<column>_<column>唯一索引名:UDX_table_<column>_<column>其中<table>是建立索引的表名,&a原创 2018-12-13 11:29:29 · 11658 阅读 · 2 评论 -
explain分析sql语句执行效率
Explain命令在解决数据库性能上是第一推荐使用命令,大部分的性能问题可以通过此命令来简单的解决,Explain可以用来查看SQL语句的执行效 果,可以帮助选择更好的索引和优化查询语句,写出更好的优化语句。Explain语法:explain select … from … [where …]例如:explain select * from news;输出:下面对各个属性进行了解:...转载 2018-12-14 09:30:42 · 458 阅读 · 0 评论 -
CONCAT(str1,str2,…) 与CONCAT_WS(separator,str1,str2,…)拼接字符串
concat() 函数,是用来连接字符串。精确查询: select * from user where name=”zhangsan”模糊查询; select * from user where name like “%zhang%”在实际的使用中,条件是作为参数传递进来的。 所以我们使用 concat() 函数mybatis:select * from user where name ...原创 2018-11-07 17:25:11 · 950 阅读 · 0 评论 -
MySQL DATE_FORMAT() 函数 格式化日期
定义和用法DATE_FORMAT() 函数用于以不同的格式显示日期/时间数据。语法DATE_FORMAT(date,format)date 参数是合法的日期。format 规定日期/时间的输出格式。可以使用的格式有:格式描述%a缩写星期名%b缩写月名%c月,数值%D带有英文前缀的月中的天%d月的天,数值(00-31)%e月的天,数值(0-31)%f微秒%H小时...原创 2018-12-20 15:13:51 · 8281 阅读 · 1 评论 -
MySQL中时间函数NOW()和SYSDATE()的区别
NOW()语句开始执行的时间(不会变化)因为NOW()取自mysql的一个变量”TIMESTAMP”,而这个变量在语句开始执行的时候就设定好了,因此在整个语句执行过程中都不会变化。SYSDATE()系统当前时间(根据系统当前时间动态变化)执行下面这个例子就明白了:SELECT NOW(),SYSDATE(),SLEEP(3),NOW(),SYSDATE()先查询了NOW()和SY...原创 2018-12-20 15:39:48 · 397 阅读 · 0 评论 -
CASE WHEN THEN 判断
转自:http://www.cnblogs.com/aipan/p/7770611.htmlCase具有两种格式简单Case函数CASE sexWHEN '1' THEN '男'WHEN '2' THEN '女'ELSE '其他' ENDCase搜索函数CASE WHEN sex = '1' THEN '男' WHEN sex = '2' THEN '女' ELSE...转载 2018-12-03 15:16:03 · 2818 阅读 · 1 评论 -
合并列值(将一列的多个值合并成一行)
需求:将一列的多个值合并成一行并用逗号分割效果sql语法:mysql写法: --默认的逗号分隔select GROUP_CONCAT(A.title) as citys from tmpcity A; --用空格分隔select GROUP_CONCAT(A.title SEPARATOR ' ') as citys from tmpcity A; oralc...转载 2018-12-07 10:20:03 · 2335 阅读 · 0 评论 -
distinct (去重)
在表中,可能会包含重复值。这并不成问题,不过,有时您也许希望仅仅列出不同(distinct)的值。关键词 distinct用于返回唯一不同的值。表A:表B:1.作用于单列select distinct name from A执行后结果如下:2.作用于多列示例2.1select distinct name, id from A执行后结果如下:实际上是根据name和id两个...转载 2018-12-10 11:56:01 · 29561 阅读 · 1 评论 -
IFNULL(expr1,expr2) 判断
一、语法IFNULL(expr1,expr2)如果expr1不是NULL,IFNULL()返回expr1,否则它返回expr2。IFNULL()返回一个数字或字符串值二、用法select IFNULL(max(CAST(id AS SIGNED)),0)+1 from tbl_student如果tbl_student表中的id有值,则IFNULL(max(cast(id AS SI...原创 2018-12-06 17:34:34 · 912 阅读 · 0 评论 -
Cast(字段名 as 转换的类型 ) 转换类型
一、语法Cast(字段名 as 转换的类型 )转换的类型:CHAR[(N)] 字符型DATE 日期型DATETIME 日期和时间型DECIMAL float型SIGNED intTIME 时间型二、用法表tbl_userdate:2018-11-03 15:31:26例1select cast(date as signed) as date from tbl_...原创 2018-12-06 17:49:59 · 33232 阅读 · 1 评论 -
union 和 union all (记录合并)
Union因为要进行重复值扫描,所以效率低。如果合并没有刻意要删除重复行,那么就使用Union All两个要联合的SQL语句字段个数必须一样,而且字段类型要“相容”(一致);如果我们需要将两个select语句的结果作为一个整体显示出来,我们就需要用到union或者union all关键字。union(或称为联合)的作用是将多个结果合并在一起显示出来。union和union all的区别是,u...转载 2018-12-10 13:45:19 · 87357 阅读 · 7 评论 -
深入浅出mybatis之返回主键ID
本文转自:https://www.cnblogs.com/nuccch/p/9067305.html目录添加单一记录时返回主键ID在映射器中配置获取记录主键值获取新添加记录主键字段值添加批量记录时返回主键ID获取主键ID实现原理添加记录后获取主键ID,这是一个很常见的需求,特别是在一次前端调用中需要插入多个表的场景。除了添加单条记录时获取主键值,有时候可能需要获取批量添加记录时...转载 2019-02-15 14:23:49 · 469 阅读 · 0 评论 -
mapper.xml处理转义字符
转自:https://www.cnblogs.com/catgatp/p/6403382.html被<![CDATA[]]>这个标记所包含的内容将表示为纯文本,比如<![CDATA[<]]>表示文本内容“<”。此标记用于xml文档中,我们先来看看使用转义符的情况。我们知道,在xml中,”<”、”>”、”&amp转载 2018-12-10 11:45:35 · 1171 阅读 · 0 评论 -
MyBatis 之动态SQL
本文使用 mybatis 动态SQL,通过 if, choose, when, otherwise, trim, where, set, foreach等标签,可组合成非常灵活的SQL语句,从而在提高 SQL 语句的准确性的同时,也大大提高了开发人员的效率。我们以 User 表为例来说明:1、动态SQL:if 语句根据 username 和 sex 来查询数据。如果username为空,那...转载 2018-12-25 10:57:25 · 163 阅读 · 0 评论 -
<foreach>标签在Mysql中的使用
foreach属性属性描述item循环体中的具体对象。支持属性的点路径访问,如item.age,item.info.details。具体说明:在list和数组中是其中的对象,在map中是value。该参数为必选。collection要做foreach的对象,作为入参时,List<?>对象默认用list代替作为键,数组对象有array代替作为键,Map对象用map...转载 2018-12-13 15:03:16 · 2309 阅读 · 0 评论 -
MySql复制一列到另一列
mysql复制一列到另一列UPDATE 表名 SET B列名=A列名异表复制需求一:把一个表某个字段内容复制到另一张表的某个字段实现1:update B set extra = A.extra from A join B on (A.id = B.id);实现2:update b set b.sms = (select a.sms from a where a.id = b.id...原创 2018-12-14 11:43:31 · 12867 阅读 · 3 评论 -
OLTP与OLAP的区别
数据处理大致分成两大类联机事务处理 OLTP (On-Line Transaction Processing)联机分析处理 OLAP (On-Line Analytical Processing)OLTP (实时交易库大量短事务对IO要求高)OLTP简介OLTP是传统的关系型数据库的主要应用,主要是基本的、日常的事务处理,记录即时的增、删、改、查,比如在银行存取一笔款,就是一...转载 2018-12-11 09:30:15 · 346 阅读 · 0 评论 -
MyISAM与InnoDB的区别
MySql 5.7 默认的存储引擎:InnoDB一、使用场景:1、MyISAM:默认表类型,它是基于传统的ISAM类型,ISAM是Indexed Sequential Access Method (有索引的顺序访问方法) 的缩写,它是存储记录和文件的标准方法。不是事务安全的,而且不支持外键,如果执行大量的select,insert MyISAM比较适合。2、InnoDB:支持事务安全的引擎,...转载 2018-12-13 10:35:15 · 132 阅读 · 0 评论 -
数据库为什么要用B+树结构--MySQL索引结构的实现
转自:https://www.cnblogs.com/xyxxs/p/4440187.htmlB+树在数据库中的应用为什么使用B+树?言简意赅,就是因为:1.文件很大,不可能全部存储在内存中,故要存储到磁盘上2.索引的结构组织要尽量减少查找过程中磁盘I/O的存取次数(为什么使用B-/+Tree,还跟磁盘存取原理有关。)3.局部性原理与磁盘预读,预读的长度一般为页(page)的整倍数,(在...转载 2018-12-13 11:05:39 · 215 阅读 · 0 评论 -
浅谈实现数据库乐观锁和悲观锁
在单实例JVM中,常见的处理并发问题的方法有很多,比如synchronized关键字进行访问控制、volatile关键字、ReentrantLock等常用方法。但是在分布式环境中,上述方法却不能在跨jvm场景中用于处理并发问题,当业务场景需要对分布式环境中的并发问题进行处理时,需要使用其他方式来实现,如数据库锁机制、缓存数据库如redis以及zookeeper分布式锁等。本文主要介绍数据库中常用...原创 2018-10-11 09:42:21 · 2166 阅读 · 0 评论