MySQL基础篇SELECT语句总结
SELECT语句总结目录
- 1. SQL概述
-
- 1.1 SQL背景知识
- 1.2 SQL 分类
- 1.3 SQL的使用规则
- 2. 基本的查询语句
-
- 2.1 SELECT查询语句
- 2.2 表结构展示
- 2.3 过滤数据
1. SQL概述
1.1 SQL背景知识
①1946 年,世界上第一台电脑诞生,如今,借由这台电脑发展起来的互联网已经自成江湖。在这几十年里,无数的技术、产业在这片江湖里沉浮,有的方兴未艾,有的已经几幕兴衰。但在这片浩荡的波动里,有一门技术从未消失,甚至“老当益壮”,那就是 SQL。
②不论是前端工程师,还是后端算法工程师,都一定会和数据打交道,都需要了解如何又快又准确地提取自己想要的数据。更别提数据分析师了,他们的工作就是和数据打交道,整理不同的报告,以便指导业务决策。
③SQL(Structured Query Language,结构化查询语言)是使用关系模型的数据库应用语言, 与数据直接打交道 ,由 IBM 上世纪70年代开发出来。后由美国国家标准局(ANSI)开始着手制定SQL标准,先后有 SQL-86 , SQL-89 , SQL-92 , SQL-99 等标准。它们分别代表了 92 年和 99 年颁布的 SQL 标准,我们今天使用的 SQL 语言依然遵循这些标准。
1.2 SQL 分类
SQL语言在功能上主要分为如下3大类:
①DDL(Data Definition Languages、数据定义语言),这些语句定义了不同的数据库、表、视图、索引等数据库对象,还可以用来创建、删除、修改数据库和数据表的结构。
主要的语句关键字包括 CREATE 、 DROP 、 ALTER 等。
②DML(Data Manipulation Language、数据操作语言),用于 添加、 删除、 更新和 查询数据库记录,并检查数据完整性。
主要的语句关键字包括 INSERT 、 DELETE 、 UPDATE 、 SELECT 等
③ DCL(Data Control Language、数据控制语言),用于定义数据库、表、字段、用户的访问权限和安全级别。
主要的语句关键字包括 GRANT 、 REVOKE 、 COMMIT 、 ROLLBACK 、 SAVEPOINT 等。
1.3 SQL的使用规则
①SQL大小写规范
数据库名 、表名 、表别名 、字段名 、字段别名 等都小写
SQL 关键字 、函数名 、绑定变量 等都大写
②注 释的使用
三种方式:
单行注释:#注释文字(MySQL特有的方式) 单行注释:
– 注释文字(–后面必须包含一个空格。)
多行注释:/* 注释文字 */
2. 基本的查询语句
2.1 SELECT查询语句
(1)SELECT … FROM
SELECT 标识选择哪些列
FROM 标识从哪个表中选择
①选择全部列
使用语句:
SELECT* FROMemployees;
②选择特定的列
SELECTemployee_id,first_name,last_name FROMemployees;
③列的别名
SELECTemployee_id,first_name,department_id dept_id FROMemployees;
④去除重复行
SELECT DISTINCTdepartment_id FROMemployees;
⑤空值参与运算
1.空值:null
2.NULL不等于0
3.不是空值的在参与运算之后的结果中,不会出现空值,在有空值参与的字段在运行之后的结果会是空值
4.解决空值参与运算的方法,使用IFNULL(字段名,参与运算的值[0])
SELECTsalary "月工资",salary * ( 1 + IFNULL( commission_pct, 0 ) ) * 12 "年工资",commission_pct FROMemployees;
⑥ 着重号
实现:解决与数据库系统相同关键字的 数据
ORDER是进行排序的关键字,所以发生重复,需要使用着重号来进行标识
SELECT*FROM`order`;
总结:我们需要保证表中的字段、表名等没有和保留字、数据库系统或常用方法冲突。如果真的相同,请在SQL语句中使用一对 ``(着重号)引起来。
2.2 表结构展示
DESCRIBE employees;
2.3 过滤数据
过滤掉不想要的数据,只显示自己想要的
实现查找部门编号是20的
SELECT *FROM employees WHERE department_id = 20;