【数据库系统概论】SQL语句总结

一、SQL的基本概念

SQL是Structured Query Language的缩写,意思是结构化查询语⾔,
是⼀种在数据库管理系统中查询或对数据库⾥⾯的数据进⾏更改的语⾔

  • 数据定义语⾔DDL(Data Ddefinition Language)
    SQL数据定义语⾔主要⽤来定义逻辑结构,包括定义基表,视图和索引。 删除表 定义表 修改表
  • 数据查询语⾔DQL(Data Query Language) SQL的数据查询语⾔主要⽤来对数据库中的各种数据对象进⾏查询。
  • 数据操纵语⾔DML(Data Manipulation Language)
    SQL的数据操纵语⾔,⽤于改变数据库中的数据,包括插⼊,删除,修改
  • 数据控制功能DCL(Data Control Language)
    SQL的数据控制语⾔,对表和视图的授权,完整性规则的描述以及事务开始和结束等控制语句。

二、SQL的基本语法DDL

2.1 SQL的数据类型

在这里插入图片描述

2.2 模式定义&删除

模式:介于数据库和表之间的一层定义。
在这里插入图片描述
在这里插入图片描述

2.3 表的定义&删除&修改

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

2.4 索引的建立&修改&删除

数据量⽐较⼤的时候, 查询耗时间⻓, 建⽴索引可以有效减少消耗时间
索引可以建⽴在⼀列或者多列上
在这里插入图片描述
在这里插入图片描述

三、SQL的基本语法DQL

现在有如下学生课程成绩表
在这里插入图片描述

3.1 查询所有&查询部分列

在这里插入图片描述

3.2 给列改名

select name 姓名 from student;
select name as 姓名 from student;

3.3 结果去重

select distinct title from student

3.4 查询结果加条件

在这里插入图片描述
注意模糊查询时,
在这里插入图片描述
在这里插入图片描述
降序查找时加上desc,如果不加默认升序
在这里插入图片描述

3.5 聚集函数使用

在这里插入图片描述

select count(title) from edu_course; 
select count(distinct title) from edu_course;//去除重复再数个数
select AVG(price) from edu_course;
select Max(price) from edu_course;
select MIN(price) from edu_course;


3.6 分组查询

在这里插入图片描述

3.7 连接

3.7.1 等值连接

在这里插入图片描述

3.7.2 自身连接

在这里插入图片描述

3.7.3 外连接

两者都是在外联子表时使用的,如果当on子句使用的字段名一样,就是a.id = b.id,并且不希望结果有两个id列,这个时候就可以使用using来简化输入,using(id)
在这里插入图片描述
补充:
1.full join 全连接:将左连接和右连接的值合并
在这里插入图片描述
2.union all不去重,union去重

3.7.8 多表查询

在这里插入图片描述

3.7.9 嵌套查询

在这里插入图片描述

3.7.10 带有any all的子查询

在这里插入图片描述

Any:>Any 表示至少大于一个值,即大于最小值。
All: >All 表示大于每一个值。换句话说,它表示大于最大值

在这里插入图片描述
在这里插入图片描述

3.7.11 having查询

在这里插入图片描述

3.7.12 集合查询

并:
在这里插入图片描述
交:在这里插入图片描述
差:
在这里插入图片描述

四、SQL的基本语法DML

4.1 数据的插入&删除&修改

插入:
在这里插入图片描述
修改:
在这里插入图片描述
删除:
在这里插入图片描述

五、SQL的基本语法-数据控制功能DCL

5.1 视图

视图(VIEW)也被称作虚表,即虚拟的表,是⼀组数据的逻辑表示,其本质是对应于⼀条SELECT
结果集被赋予⼀个名字,即视图名字。
视图本身并不包含任何数据,它只包含映射到基表的⼀个查询语句,当基表数据发⽣变化,视图
⽬的: ⽅便,简化数据操作
当我们业务需求要查出多张表的数据,这时我们可能会关联多张表查询处理.
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

通过更新视图来更改原表:
在这里插入图片描述

猜你喜欢

转载自blog.csdn.net/qq_42425551/article/details/124060786
今日推荐