【mysql的高级进阶(一)】教程文章相关的互联网学习教程文章

MySQL进阶5--分组排序和分组查询 group by(having) /order by

介绍分组函数功能:用做统计使用,又称为聚合函数或组函数 1.分类:sum, avg 求和 /平均数, 只处理数值型,都绝对忽略NULL值(avg处理时统计的个数没有null项)max ,min ,可以求字符串最大最小 ,可以匹配日期,都绝对忽略NULL值count ,不计算NULL ,不把null算进数里 #2. 参数支持类型 SELECT MIN(last_name) ,MAX(last_name) FROM employees; #Abel ZlotkeySELECT MIN(hiredate),MAX(hiredate) FROM employees; #3. 都可以和...

mysql 开发进阶篇系列 55 权限与安全(安全事项 )【代码】【图】

-R mysql.mysql /etc/my.cnf [root@hsr ~]# chmod 600 /etc/my.cnf [root@hsr ~]# ls -l /etc/my.cnf -rw------- 1 mysql mysql 1072 10月 22 15:48 /etc/my.cnf -- 下面使用test系统用户查看,提示权限不够 [root@hsr ~]# su test [test@hsr root]$ cat /etc/my.cnf cat: /etc/my.cnf: 权限不够    以上三种方法,第1种方法最不安全,因为是明文。第2种方法安全,但要交互。第3种方便,但要将配置文件设置严格的存取权限。2....

MySQL进阶8 分页查询(limit) - 【SQL查询语法顺序及大致结构】- 子查询的3个经典案例

/* 应用场景: 当要显示的数据,一页显示不全,需要分页提交sql请求语法:select 查询列表 #7from 表1 #执行顺序:#1【join type join 表2 #2on 连接条件 #3where 筛选条件 #4group by 分组字段 #5having 分组后筛选或函数 #6order by 排序的字段 #8】limit offset, size ; #9 #offset 要显示条目的起始索引(从0开始,0想可以省略),size 要显示的条目个数特点:①limit语句放在...

MySQL进阶 9: 联合查询 - 查询语句1 union 查询语句2 union ...

: 联合查询 /*union 联合合并: 将多条查询语句的结果合并成一个结果语法: 查询语句1 union 查询语句2 union ...应用语境: 要查询的结果来自多个表,但查询的列数的列信息一致时,可将最终结果归于一个表中注意: 需要自己将所有的字段名自己按顺序摆放; */#引入的案例 : 查询部门编号 > 90 或邮箱包含a的员工信息SELECT * FROM employees WHERE email LIKE ‘%a%‘ OR department_id > 90;SELECT * FROM employees WHERE email LIKE...

【MySQL进阶】Keepalived1.4.0结合MySQL 5.7.19实现主备高可用【代码】【图】

1、基本环境 数据库安装及主备同步接上一篇文章:http://blog.51cto.com/13946719/2309514JDK 1.8_171MySQL 5.7.19CentOS 7.4Keepalived 1.4.0DB1:192.168.200.180DB2:192.168.200.181VIP: 192.168.200.99 2、下载安装Keepalived 2.1、keepalived下载 下载地址:wget http://www.keepalived.org/software/keepalived-1.4.0.tar.gz 2.2、keepalived安装 2台均按照此种方式进行安装 yum install gcc gcc-c++ make openssl openss...

mysql进阶 十九 SQL语句如何精准查找某一时间段的数据【图】

仔细研究还是能够发现一些细节性的问题的。 SQL语句1 SELECT * FROM lmapp.lm_bill where merch_uid=‘S18853883587‘ AND tx_time Between ‘2015-09-17‘ AND ‘2015-10-27 24:00:0‘; 查询结果1 SQL语句2 SELECT * FROM lmapp.lm_bill where merch_uid=‘S18853883587‘ AND tx_time Between ‘2015-09-17 0:00:0‘ AND ‘2015-10-27 24:00:0‘; 查询结果2 SQL语句3 ...

mysql进阶 十五 mysql批量删除大量数据

假设有一个表(syslogs)有1000万条记录,需要在业务不停止的情况下删除其中statusid=1的所有记录,差不多有600万条, 直接执行 DELETE FROM syslogs WHERE statusid=1 会发现删除失败,因为lock wait timeout exceed的错误。 因为这条语句所涉及的记录数太多,因此我们通过LIMIT参数分批删除,比如每10000条进行一次删除,那么我们可以利用 MySQL这样的语句来完成: DELETE FROM syslogs WHERE status=1 ORDER BY statusid LIMIT 10...

MySQL进阶 一 主外键讲解【图】

主键:是唯一标识一条记录,不能有重复的,不允许为空,用来保证数据完整性 外键:是另一表的主键, 外键可以有重复的, 可以是空值,用来和其他表建立联系用的。所以说,如果谈到了外键,一定是至少涉及到两张表。例如下面这两张表: 上面有两张表:部门表(dept)、员工表(emp)。Id=Dept_id,而Dept_id就是员工表中的外键:因为员工表中的员工需要知道自己属于哪个部门,就可以通过外键Dept_id找到对应的部门,然后才...

Mysql数据库进阶之(分表分库,主从分离)【代码】【图】

分表create table cakes (id int unsigned primary key auto_increment,cakename varchar(16) )charset=utf8 partition by range(id)(#分表名称cake1000,范围是id=1 to id=999partition cake1000 values less than(1000),#分表名称cake1000,范围是id=1000 to id=1999partition cake2000 values less than(2000) );说明这里通过id标识来分表,主要表格的id如果超过了规定的值就会进入下一个表格//这个功能主要是用在表格已经生成了但...

mysql进阶 六 模糊查询的四种用法介绍

这篇文章主要介绍了mysql中模糊查询的四种用法,需要的朋友可以参考下。 下面介绍mysql中模糊查询的四种用法: 1%: 表示任意0个或多个字符。可匹配任意类型和长度的字符,有些情况下若是中文,请使用两个百分号(%%)表示。 比如 SELECT * FROM [user] WHERE u_name LIKE ‘%三%‘ 将会把u_name为“张三”,“张猫三”、“三脚猫”,“唐三藏”等等有“三”的记录全找出来。 另外,如果需要找出u_name中既有“三”又有“猫”...

mysql进阶【代码】

2. mysql配置文件 mysql的配置文件为/etc/my.cnf 配置文件查找次序:若在多个配置文件中均有设定,则最后找到的最终生效 /etc/my.cnf --> /etc/mysql/my.cnf --> --default-extra-file=/PATH/TO/CONF_FILE --> ~/.my.cnf mysql常用配置文件参数:参数说明port = 3306 设置监听端口socket = /tmp/mysql.sock 指定套接字文件位置basedir = /usr/local/mysql 指定MySQL的安装路径datadir = /data/mysql 指定MySQL的数据存放路径pid-fi...

MySQL进阶篇【代码】【图】

MySQL基础篇 2.1 数据类型 MySQL中定义数据字段的类型对你数据库的优化是非常重要的。 MySQL支持多种类型,大致可以分为三类:数值、日期/时间和字符串(字符)类型。 2.1.1 数值类型2.1.2 日期和时间类型2.1.3 字符串类型整型 ?tinyint,占1字节,有符号:-128~127,无符号位:0~255 ?smallint,占2字节,有符号:-32768~32767,无符号位:0~65535 ?mediumint,占3字节,有符号:-8388608~8388607,无符号位:0~16777215 ?int,占4字节...

2019.6.11_MySQL进阶一:索引

mysql字段进行一些特定的算法排序,比如二叉树的算法和哈希算法,哈希算法是通过建立特征值,然后根据特征值来快速查找。MySQL索引的建立对于MySQL的高效运行是很重要的,索引可以大大提高MySQL的检索速度。 索引分单列索引和组合索引。单列索引,即一个索引只包含单个列,一个表可以有多个单列索引,但这不是组合索引。组合索引,即一个索引包含多个列。 创建索引时,你需要确保该索引是应用在 SQL 查询语句的条件(一般作为 WHERE...

2019.6.11_MySQL进阶三:临时表

命令显示数据表列表时,无法看到Temp_goods。在Navicate的树形结构中刷新也不会看到。 查看表数据结构的2条命令: SHOW CREATE TABLE Temp_goods -- 显示当前表的数据结构,包括引擎和字符集 DESC Temp_goods -- 显示当前表的数据结构当退出当前MySQL会话后,用SELECT命令来查询临时表数据,会显示数据库中不存在临时表。2019.6.11_MySQL进阶三:临时表标签:数据 str 连接 span name 自动 ora ...

MySQL 查询进阶篇【代码】

group by的用法 集合函数的使用 order by的用法 having对组的管理 limit的用法 查重distinct的用法1.1、group by的用法create table student (sno int primary key,name char(10) not null,age int,sex char(5) not null,city char(5) not null,score int not null );insert into student(sno,name,age,sex,city,score) value(1001,"刘军",18,"男","武汉",91), (1002,"刘军",18,"男","杭州",90), (1003,"李俊杰",20,"男","北京",21...