有意思的MySQL之最】的更多相关文章

写在前面 在平时工作中特别是架构设计阶段,咨询量最多的也就是MySQL之最了,在不经意间发现原来MySQL手册里面已经列举了,顺手拿来翻译下,如果有翻译错误或者不当的地方,欢迎批评指正. 最大和最小 一个表里最多可有1017列(在MySQL 5.6.9 之前最大支持1000列).虚拟列也受限这个限制. 一个表最多可以有64个二级索引. 如果innodb_large_prefix打开,在InnoDB表DYNAMIC或COMPRESSED列格式下,索引前缀最大支持前3072字节:如果不打开的话,在任…
MySQL中经常使用关联查询,有机会总结下: 1 left join(左联查询): 返回包括左表中的所有记录和右表中联接字段相等的记录 例:select * from a left join b on a.id=b.id 2 right join(右联查询): right join(右联接)返回包括右表中的所有记录和左表中联接字段相等的记录 例:select * from a right join b on a.id=b.id 看到这里可能比较还是有点不明白,请看以下示例 假如有两张表,A B…
1, 修改密码 mysql -u root -p update user set Password = PASSWORD('NEWPWD') WHERE user = 'root'; FLUSH PRIVILEGES; 2, 添加远程授权 GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' WITH GRANT OPTION; 3, 修改编码, my.ini [client] default-character-set=utf8 [mysqld] characte…
本文是在做一家汽车配件的电商网站时,大体情景是一个List.php页面,该页面分页列出部分配件并统计总数量用于分页. 当然该页面中也可以指定一下查询条件,如适配的车辆品牌.车系.排量.年份等,一件商品可能适配多种车辆. 所以建了个这么个表: goods_chexings表…
转载自:https://www.toutiao.com/i6668275333034148356 一.背景介绍 用的数据库是mysql5.6,下面简单的介绍下场景 课程表: 数据100条 学生表: 数据70000条 学生成绩表SC: 数据70w条 查询目的: 二.问题:查找语文考100分的考生 查询语句: 执行时间:30248.271s 为什么这么慢?先来查看下查询计划: 发现没有用到索引,type全是ALL,那么首先想到的就是建立一个索引,建立索引的字段当然是在where条件的字段. 先给sc…
1 使用sql查询每个学生a_id最常借图书类型u_id.表名:t1 (学生图书借阅) [问题分析,1 先选出每个学生,每个类型所借数量] SELECT a_id,u_id,count(u_id) as a from t1 GROUP BY a_id,u_id ORDER BY a desc; 2 从结果表中再选出,每个学生常借图书类型最大的一个, SELECT a2.a_id,a2.u_id,max(a2.a) from (SELECT a_id,u_id,count(u_id) as a f…
git项目地址: https://github.com/akopytov/sysbench 利用sysbench很容易对mysql做性能基准测试(当然这个工具很强大,除了测试主流数据库性能,还能测试其它方面,详情自己看官网项目文档) mac上的用法: 一.安装 brew install sysbench 二.先在mysql上创建一个专门的测试数据库,比如test 三.利用sysbench先生成测试数据 sysbench --test=oltp --oltp-table-size=5000000…
摘要 本文以MySQL数据库为研究对象,讨论与数据库索引相关的一些话题.特别需要说明的是,MySQL支持诸多存储引擎,而各种存储引擎对索引的支持也各不相同,因此MySQL数据库支持多种索引类型,如BTree索引,哈希索引,全文索引等等.为了避免混乱,本文将只关注于BTree索引,因为这是平常使用MySQL时主要打交道的索引,至于哈希索引和全文索引本文暂不讨论. 文章主要内容分为三个部分. 第一部分主要从数据结构及算法理论层面讨论MySQL数据库索引的数理基础. 第二部分结合MySQL数据库中My…
摘要 本文以MySQL数据库为研究对象,讨论与数据库索引相关的一些话题.特别需要说明的是,MySQL支持诸多存储引擎,而各种存储引擎对索引的支持也各不相同,因此MySQL数据库支持多种索引类型,如BTree索引,哈希索引,全文索引等等.为了避免混乱,本文将只关注于BTree索引,因为这是平常使用MySQL时主要打交道的索引,至于哈希索引和全文索引本文暂不讨论. 文章主要内容分为三个部分. 第一部分主要从数据结构及算法理论层面讨论MySQL数据库索引的数理基础. 第二部分结合MySQL数据库中My…
本文主要讲解mysql的操作,尽量保证步骤的详细与清晰,希望能帮到大家. 1.登录后进行数据库的创建:create database lf(数据库名);  (一定要记住分号,mysql在语句的结束符就是分号,而不是回车),还有一点就是mysql不用区分大小写 创建好database后我们就进一步利用他:use  lf;选择操作执行后的所有操作都将会发生在选中的数据库中. 如果你想删除的话则:drop  database lf : 创建后可以利用:show databases;(注意这里的复数形式…