世上最简版的SQL Server学习

目录:

1.SQL数据处理

2.常用操作

3.创建定时任务

4.模糊查询与通配符查询

5.聚合函数介绍

6.排序

7.分组查询

 

 

一、 SQL处理数据

 

 

                         SQL用于查询并导出数据

                                   |

                                   |

 

----> 需求分析 -----> 数据采集 -----> 数据查询 ------> 数据分析 ------> 数据分析报告 ------

                                                  |

                                                  |

                                  PythonR用于导出数据并分析整理                                      

 

 

二、常用操作

 

1、 主要功能

   

性能保障、数据安全、数据存储

 

2、 常用操作类型

    

创建数据库、还原数据库、备份数据库、连接远程数据库

 

3、 数据表操作

 

DQL : 数据库查询语言-----select

DML: 数据操作语言---------update(改)、insert(增)、delete(删)

DDL:数据定义语言---------createalterdrop

 

其中select包括:

条件查询:wheredistinct、逻辑运算符

分组:group by having

排序:order by

常用函数

子查询

多表关联

 

三、创建定时任务

 

 

 

1、任务说明

 

 

 

自动备份任务:每天0点整准时备份CS数据库,备份路径D:\backup_dropdate

 

自动清理旧备份任务:每周日0点整清理旧备份,清理文件夹同上地址

 

 

 

2、详细过程图解

主要步骤:

 

·启动维护计划向导

·选择计划属性

 

 ·选择维护任务

 

·新建作业计划

 

·结果图:

 

 

四、 模糊查询与通配符查询

 

 

1、 查询内容

 

特殊关键字:likeinbetween

 

通配符: %(代表任意字符)、 _(代表一个字符)

 

空值和空格

 

 

2、 查询脚本及实现

 

查询姓王的学生

 

 

查询不姓王的学生--notlike的组合使用

 

查询姓王且名字是2个字的学生

 

 

计算出学生的年龄--强调当前的字段里没有符合年龄的字段,如何计算出来

 

 

 

 

代码展现:

 

select IDcard, substring(IDcard,7,4)出生年份 from mingdan

select 2020-substring(mingdan.IDcard,7,4)年龄 from mingdan

where 2020-substring(mingdan.IDcard,7,4) >= 8 and 2020-substring(mingdan.IDcard,7,4) <= 30--直接算出年龄

 

select 2020-substring(mingdan.IDcard,7,4)年龄 from mingdan

where 2020-substring(mingdan.IDcard,7,4) between 9 and 20

 

select * from mingdan where IDcard is null or IDcard like '% %'

 

实现between语句

 

 

 

 

 

 

四、聚合函数介绍

 

 

 

1、聚合函数内容

 

 

 

·聚合函数介绍

 

 

 

Sumcountmaxminavg

 

只能对数值进行运算,如number字段、存储数字的varchar字段

 

 

 

·不得不说的区别

 

 

 

除了count以外,聚合函数都会忽略空值count(1)

 

 

 

·利用distinct去重

 

 

 

2、查询脚本

 

课程表(SCORE)

 

1 语文 2 数学  3英语  4体育

 

  1. 查询南天鹏的所有考试成绩

 

 

 

 

 

 

 

  1. 计算南天鹏成绩的总分,最高分,最低分,平均分

 

 

 

  1. 课后题:计算语文课的最高分、最低分、平均分

 

 

 

 

  1. 数一数总共有多少个学生

 

 

 

 

 

 

 

  1. count与其他聚合函数的的区别

 

 

 

注意:空格和空值也同样计算了

 

 

 

  1. 查询学生姓名是否有重复

 

 

 

 

 

 

 

 

 

 

 

 

五、排序

 

 

 

一、

 

(1) 排序关键字

 

Order by

 

(2) 排序用法

 

1、 单字段排序

 

2、 多字段排序

 

3、 升降序 desc降序,升序不需要做任何标注(默认就是升序)

 

(3) 排序的原理

 

1、字符型按照首字母AZ排序

 

2、数字、日期按照大小来排序

 

(4) 使用ORDER BY 排序的两大原则

 

1、原则1永远在最后

 

2、原则2:没有不能排序的东西

 

 

二、脚本查询

 

 

  1. 查询学生名单并按照姓名排序

 

 

 

 

 

 

 

 

 

  1. 查询语文课的成绩以降序(从高到低)排列

 

 

 

 

 

 

 

 

 

 

  1. 查询学生所有成绩按照姓名成绩(降序排列

 

 

 

 

 

 

·排序条件为(120901008-120901005),xm

 

 

 

 

 

 

七、分组查询

 

 

 

 

 

 

·分组原理解析

 

 

 

 

 

 

 

 

 

 

1、计算每个学生的总分

 

 

·浏览所有学生成绩表

 

 

 

 

·告诉SQL,按照什么分组(这里按照姓名)

 

·分组之后算总分、平均分(sum()avg()

 

·注意事项:group by的顺序是在where之后

 

 

 

 

 

2、筛选出平均分大于60分的同学(分组查询中,对于聚合结果的过滤和筛选要用到having

 

 

 

 

 

·在group by后要用having

 

 

 

猜你喜欢

转载自www.cnblogs.com/CRRPF/p/12640111.html