进军后端第一天,SQL基础专题

113 阅读3分钟

持续创作,加速成长!这是我参与「掘金日新计划 · 10 月更文挑战」的第7天,点击查看活动详情

SQL简介

SQL 是一种操作数据库的语言,包括创建数据库、删除数据库、查询记录、修改记录、添加字段等。SQL 虽然是一种被 ANSI 标准化的语言,但是它有很多不同的实现版本。

用途 : SQL 之所以广受欢迎,是因为它具有以下用途:

  • 允许用户访问关系型数据库系统中的数据;
  • 允许用户描述数据;
  • 允许用户定义数据库中的数据,并处理该数据;
  • 允许将 SQL 模块、库或者预处理器嵌入到其它编程语言中;
  • 允许用户创建和删除数据库、表、数据项(记录);
  • 允许用户在数据库中创建视图、存储过程、函数;
  • 允许用户设置对表、存储过程和视图的权限。

第一章 select的用法

1.1 SQL执行顺序

请务必多看多记,因为它很重要,要深入学习一定要记得这个运行先后顺序。

(8)SELECT (9)DISTINCT (11)<Top Num> <select list>
(1)FROM [left_table]
(3)<join_type> JOIN <right_table>
(2) ON <join_condition>
(4)WHERE <where_condition>
(5)GROUP BY <group_by_list>
(6)WITH <CUBE | RollUP>
(7)HAVING <having_condition>
(10)ORDER BY <order_by_list>

1.2 SELECT 语句定义

  • SELECT 语句用于从表中选取数据。
  • 结果被存储在一个结果表中(称为结果集)。

1.3 SELECT 语法 ==SELECT 列名称 FROM 表名称;== 以及:

SELECT * FROM 表名称;

注释:==SQL 语句对大小写不敏感。SELECT 等效于 select==。

1.4 SELECT列明实例

  • 如需要获取 "姓名(r_name)"和"职位(meno)"的列的内容(从名为 "t_role" 的数据库表),请使用类似这样的 SELECT 语句:
SELECT r_name,meno FROM t_role;

image.png 查询结果: 在这里插入图片描述 1.5 SELECT * 实例 现在我们希望从 "t_role" 表中选取所有的列。 请使用符号 * 取代列的名称,就像这样:

SELECT * FROM t_role

提示:星号(*)是选取所有列的快捷方式

查询结果:

image.png

第二章 DISTINCT 的用法

2.1 DISTINCT 语句

  • 在表中,可能会包含重复值。这并不成问题,不过,有时您也许希望仅列出不同(distinct)的值。
  • 关键词 DISTINCT 用于返回唯一不同的值。

2.2 DISTINCT 语法

SELECT DISTINCT 列名称 FROM 表名称

2.3使用 DISTINCT 关键词

我们先看看t_role表中的数据:

SELECT * FROM t_role

image.png 如果要从"角色状态(status)"列中选取所有的值,我们可以使用如下语句

SELECT status FROM t_role

结果: 在这里插入图片描述 如需从 "角色状态(status)" 列中仅选取唯一不同的值,我们需要使用 SELECT DISTINCT 语句:请注意,在结果集中,1 被列出了5次。

SELECT DISTINCT status FROM t_role

结果: 在这里插入图片描述 现在,在结果集中,1仅被列出了一次。

第三章 WHERE的用法

3.1 WHERE 子句

  • 如需有条件地从表中选取数据,可将 WHERE 子句添加到 SELECT 语句。

3.2 WHERE 语法

SELECT 列名称 FROM 表名称 WHERE 列 运算符 值

下面的运算符可在 WHERE 子句中使用:

操作符描述
=等于
<>不等于
大于
<小于
>=大于等于
<=小于等于
BETWEEN在某个范围内
LIKE搜索某种模式(模糊查询)
IN指定针对某个列的多个可能值
EXISTS在子查询中匹配到符合条件的数据行

注释:在某些版本的 SQL 中,操作符 <> 可以写为 !=。

3.3 使用 WHERE 子句

如果只希望选取居住在城市 "郑州" 的,我们需要向 SELECT 语句添加 WHERE 子句:

SELECT * FROM t_employee WHERE e_address='郑州'

"t_employee" 表里的数据: image.png 结果: 在这里插入图片描述

3.4 引号的使用

请注意,我们在例子中的条件值周围使用的是单引号

SQL 使用单引号来环绕文本值(大部分数据库系统也接受双引号)。如果是数值, 请不要使用引号。

image.png