loannes's blog

标签 · MySQL

首页

关于

归档

loading..
MySQL联结

【MySQL必知必会】联结表

关系表 什么是关系表,假设有一个学生表,其中包含了学生姓名,出生年月,主键id, 班级id(外键)。 同时还有另外一个表,是一个班级表,其中包含主键id,班级名称。 这样的两个表就形成了关系表,学生表可以通过外键(班级id)查询到该学员的班级名称。这样的关系表也可称为一对多关系表。 外键 外键为某个表中的一列,它包含另一个表的主键值,定义了两个表之间的关系。 这样做的好处: 班级信息不重复,从而不浪费查询的时间和空间。 如果班级信息有变动,直接更新班级表即可,学生表的数据不用改动 因为数据无重复,处理起来也会更加方便 为什么要使用联结 分解数据为多个表能更有效的存储,更方便的处理,并且具有更大的可伸缩性。 但是由于数据存储在多个表中,又不想使用多重子查询这种不易阅读的写法,那可以用联结。 简单来说: ..

更多
loading..
MySQL

【MySQL必知必会】分组数据

创建分组 SELECT emp_no, COUNT(*) FROM salaries GROUP BY emp_no HAVING emp_no < 10020; 输出: +--------+----------+ | emp_no | COUNT(*) | +--------+----------+ | 10001 | 17 | | 10002 | 6 | | 10003 | 7 | | 10004 | 16 | | 10005 | 13 | | 10006 | 12 | | 10007 | 14 | | 10008 | 3 | | 10009 | 18 | | ..

更多
loading..
MySQL汇总

【MySQL必知必会】汇总数据

汇总数据 简单来说就是对数据表的检索。观察它的最大值,最小值等 SQL聚集函数 函数 说明 AVG() 返回某列的平均值 COUNT() 返回某列的行数 MAX( ) 返回某列的最大值 MIN() 返回某列的最小值 SUM() 返回某列之和 AVG函数 AVG()函数可用来返回所有列的平均值,也可返回单个列的平均值。 SELECT AVG(salary) AS avg_salary FROM salaries; 输出: +------------+ | avg_salary | +------------+ | 63810.7448 | +------------+ 1 row in set (0.75 sec) COUNT函数 两种使用方式: 使用COUNT(*..

更多
loading..
MySQL

【MySQL必知必会】创建计算字段

计算字段 某些数据需要通过数据库中的其他字段结合,计算,转换等才能使用。这个时候就需要用到计算字段功能了。 其实这种处理客户端和服务端都能完成,但是服务端处理这种事情更快,一般都是由服务端来解决这种事情。 拼接字段 使用Concat()函数来拼接 mysql> SELECT Concat(last_name, first_name) -> FROM employees -> ORDER BY last_name; 输出: 发现打印结果末尾有很多空格,可以使用MySQL的RTrim()函数来删除值右侧多余的空格。 mysql> SELECT Concat(RTrim(last_name), RTrim(emp_no)) AS name_no FROM employ..

更多
loading..
MySQL正则表达式

【MySQL必知必会】正则表达式

正则表达式介绍 正则表达式可用于查找文件,可以在文本块中找到重复的单词。解析URL,处理复杂文本等。 正则表达式与MySQL的关系 通过正则对文本串进行比较来替换LIKE。 见下面例子 基本字符匹配 从first_name这个列中找出所有包含’oo’的行 SELECT first_name FROM employees WHERE first_name REGEXP 'oo'; 该代码等同于 SELECT first_name FROM employees WHERE first_name LIKE '%oo%'; 目前看下来正则在字符长度比较短的情况下,执行效率比通配符来得低。 看下面的例子: 在salaries表中,查找salary列里匹配.0000。这个.表示匹配任意一个字符,这个是通配符%..

更多
loading..
MySQL

【MySQL必知必会】使用数据处理函数

函数 函数提供了对数据转换和处理的功能 上篇文章中的RTrim() 以及处理时间的TIMESTAMPDIFF()都是函数。 因为函数是当前数据库使用的引擎特有,所以如果遇到移植到其他数据库就可能会出现不支持这些函数的情况。 PS:在开发中要注意这种情况,避免在移植后出现不必要的麻烦。如果必须使用函数,写好相关注释 使用函数 大多数SQL支持以下几种类型的函数: 用于处理文本串(如删除,填充,转换大小写) 对数值进行算数操作(如返回绝对值,进行代数运算) 用于处理日期 返回DMBS使用的特殊信息(如用户登录信息,版本细节) 文本处理函数 上篇了解了RTrim是去除右边空格,LTrim是去除左边空格 接下来学习个新函数-Upper(),将文本转换成大写 mysql> SELECT first_nam..

更多
12