SQL
文章平均质量分 84
Janson_Lin
前中科院开发工程师!
展开
-
MySQL用B+树(而不是B树)做索引的原因
众所周知,MySQL的索引使用了B+树的数据结构。那么为什么不用B树呢?先看一下B树和B+树的区别。1.B树维基百科对B树的定义为“在计算机科学中,B树(B-tree)是一种树状数据结构,它能够存储数据、对其进行排序并允许以O(log n)的时间复杂度运行进行查找、顺序读取、插入和删除的数据结构。B树,概括来说是一个节点可以拥有多于2个子节点的二叉查找树。与自平衡二叉查找树不同,B-树为系统最优化大块数据的读和写操作。B-tree算法减少定位记录时所经历的中间过程,从而加快存取速度。普遍运用在数据转载 2022-02-23 21:20:37 · 1331 阅读 · 0 评论 -
这篇 MySQL 索引和 B+Tree 讲的太通俗易懂
正确的创建合适的索引,是提升数据库查询性能的基础。在正式讲解之前,对后面举例中使用的表结构先简单看一下:createtableuser(idbigintnotnullcomment'id'primarykey,namevarchar(200)nullcomment'name',agebigintnullcomment'age',genderintnullcomment'gende...转载 2021-11-17 19:33:18 · 177 阅读 · 0 评论 -
linux环境Mysql主从库配置
mysql主从同步定义主从同步使得数据可以从一个数据库服务器复制到其他服务器上,在复制数据时,一个服务器充当主服务器(master),其余的服务器充当从服务器(slave)。因为复制是异步进行的,所以从服务器不需要一直连接着主服务器,从服务器甚至可以通过拨号断断续续地连接主服务器。通过配置文件,可以指定复制所有的数据库,某个数据库,甚至是某个数据库上的某个表。使用主从同步的好处:通过增加从服务器来提高数据库的性能,在主服务器上执行写入和更新,在从服务器上向外提供读功能,可以动态地调整从服务器的数原创 2021-11-10 14:44:26 · 787 阅读 · 0 评论 -
学一下FROM_UNIXTIME 格式化MYSQL时间戳函数,很方便
函数:FROM_UNIXTIME作用:将MYSQL中以INT(11)存储的时间以"YYYY-MM-DD"格式来显示。语法:FROM_UNIXTIME(unix_timestamp,format)返回表示 Unix 时间标记的一个字符串,根据format字符串格式化。format可以包含与DATE_FORMAT()函数列出的条目同样的修饰符。根据format字符串格式化date值。下列修饰符可以被用在format字符串中:%M 月名字(January……December)%W 星期名字(S转载 2021-05-20 17:16:43 · 322 阅读 · 0 评论 -
SQL 语法(超级详细)
一、基本概念数据库术语 数据库(database)- 保存有组织的数据的容器(通常是一个文件或一组文件)。 数据表(table)- 某种特定类型数据的结构化清单。 模式(schema)- 关于数据库和表的布局及特性的信息。模式定义了数据在表中如何存储,包含存储什么样的数据,数据如何分解,各部分信息如何命名等信息。数据库和表都有模式。 列(column)- 表中的一个字段。所有表都是由一个或多个列组成的。 行(row)- 表中的一个记录。 ...原创 2021-05-08 15:45:39 · 21672 阅读 · 0 评论 -
oracle connect by用法示例优雅递归查询
背景在工作中常常会遇到一些数据表包含父子关系的数据,比如部门、行业、地区等等,如果需要将其节点按父子关系一步一步列出来,就需要使用connect by了。基本语法start with :设置起点,省略后默认以全部行为起点。 connect by [condition] :与一般的条件一样作用于当前列,但是在满足条件后,会以全部列作为下一层级递归(没有其他条件的话)。 prior : 表示上一层级的标识符。经常用来对下一层级的数据进行限制。不可以接伪列。 level :伪列,表示当前深.原创 2020-05-21 15:25:53 · 556 阅读 · 0 评论 -
mysql密码验证规则
1、查看mysql全局参数配置mysql>SHOWVARIABLESLIKE'validate_password%';+--------------------------------------+--------+|Variable_name|Value|+-------------------------...原创 2019-08-01 14:40:33 · 1579 阅读 · 0 评论 -
MySql教程
https://blog.csdn.net/qq_35246620/article/details/70823903转载 2019-07-09 09:08:31 · 92 阅读 · 0 评论 -
SQL中的 case when 的使用方法
Case具有两种格式。简单Case函数和Case搜索函数。--简单Case函数CASE sexWHEN '1' THEN '男'WHEN '2' THEN '女'ELSE '其他' END--Case搜索函数CASE WHEN sex = '1' THEN '男'WHEN sex = '2' THEN '女'ELSE '其他' END这两种方式,可以实现相同的功能。简单...原创 2019-03-01 16:53:58 · 388 阅读 · 0 评论 -
数据库---索引操作(索引的创建,删除,查询)
1、创建索引create index 索引名 on 表名(列名);2、删除索引drop index 索引名;3、创建组合索引create index 索引名 on 表名(列名1,,列名2);4、查询索引--根据索引名,查询表索引字段select * from user_ind_columns where index_name='索引名';--根据表名,查询一...原创 2019-01-07 14:50:32 · 552 阅读 · 1 评论 -
SQL中WITH--AS的用法
一.WITH AS的含义WITH AS短语,也叫做子查询部分(subquery factoring),可以定义一个SQL片断,该SQL片断会被整个SQL语句用到。可以使SQL语句的可读性更高,也可以在UNION ALL的不同部分,作为提供数据的部分。对于UNION ALL,使用WITH AS定义了一个UNION ALL语句,当该片断被调用2次以上,优化器会自动将该WITH AS短语所获取的...原创 2018-12-20 19:28:51 · 10057 阅读 · 1 评论 -
SQL中round()函数的使用
ROUND() 函数ROUND 函数用于把数值字段舍入为指定的小数位数。SQL ROUND() 语法SELECT ROUND(column_name,decimals) FROM table_name参数 描述 column_name 必需。要舍入的字段。 decimals 必需。规定要返回的小数位数。 SQL ROUND() 实例我们拥有下面这...原创 2018-12-20 16:40:23 · 10264 阅读 · 0 评论