学习内容
1.导入示例数据库:
参考教程:https://www.yiibai.com/mysql/how-to-load-sample-database-into-mysql-database-server.html
2.SQL 与 MYSQL:
- SQL是用于访问和处理数据数据的计算机语言
- MYSQL是数据库管理系统,是关系型数据库
3.查询语句 SELECT FROM
- 语句解释:
1)SELECT 语句用于从表中选取数据,
2)FROM 语句用于限定选取数据的表
语法结构为:SELECT 列名称 FROM 表名称 - 去重语句:
SELECT DISTINCT 列名称 FROM 表名称
SELECT 列名称 FROM 表名称 GROUP BY 列名称 - 前N个语句:
SELECT TOP(N) 列名称 FROM 表名称 - CASE…END判断语句:
CASE列名称 WHEN 1 THEN 优秀 ELSE 不优秀 END
4.筛选语句 WHERE
- 语句解释:
WHERE语句用于指定限定条件
1)操作符
= : 检查如果两个操作数的值是相等或不相等,如果是的话,条件为真
<: 检查如果左操作数的值小于右操作数的值,如果是的话,条件为真
> : 检查值,如果左操作数大于右操作数的值,如果是的话,条件为真
2)运算符
AND: AND运算符允许多个条件的存在,在一个SQL语句中的WHERE子句
IN: IN操作符用来比较的文字值已指定一个值的列表
LIKE: LIKE运算符用于比较相似的值,使用通配符的值
OR: 使用OR运算符结合SQL语句的WHERE子句中的多个条件
3)通配符
%: 匹配一个或多个字符
_: 匹配一个字符
5.分组语句 GROUP BY
- 聚集函数
1) AVG()函数通过对表中行数计数并计算其列值之和,求得该列的平均值
2)COUNT()函数用于进行计数
3)MAX()函数返回指定列中的最大值
4)MIN()函数功能正好与MAX()功能相反,它返回指定列的最小值
5)SUM()函数用来返回指定列值的和(总计)
- HAVING子句
HAVING 语法与 WHERE 语法类似,但 HAVING 可以包含聚合函数
6.排序语句 ORDER BY
- 语句解释:ORDER BY 语句用于对结果集进行排序
- 升序:ASC
- 降序:DESC
7.函数
- 时间函数:(仅列出常用函数)
1)getdate()当前系统日期、时间
2)dateadd(YY/MM/DD,1,2019/02/19)在向指定日期加上一段时间的基础上,返回新的 datetime 值
3)datediff 返回跨两个指定日期的日期和时间边界数 - 数值函数:
1)ABS(): 返回数字表达式的绝对值
2)ROUND():返回数值表达式四舍五入到整数。可用于舍表达式为数字小数点 - 字符串函数:
1)LEFT:截取字符串最左边的指定长度的子字符串
2)RIGHT:截取字符串最右边的指定长度的子字符串
3)MID:截取字符串指定位置起的指定长度的子字符串
8. SQL注释
SQL注释是写CODE比较重要的部分,好的注释可以让CODE看起来更通俗易懂,也会让自己修改起来更方便,所以在写CODE时一定要将每部分数据及限制条件都加上注释,如果有修改还可以在注释上加上修改日期,真的很重要。
9. SQL代码规范
规范每个人的标准都不相同,尽量以让大家看起来都清晰的格式去书写代码,养成好习惯,世界都很美好。
作业
项目一:查找重复的电子邮箱
项目二:查找大国