> 文档中心 > MySQL基础篇SELECT语句总结

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-92SQL-99 等标准。它们分别代表了 92 年和 99 年颁布的 SQL 标准,我们今天使用的 SQL 语言依然遵循这些标准。

1.2 SQL 分类

SQL语言在功能上主要分为如下3大类:

①DDL(Data Definition Languages、数据定义语言),这些语句定义了不同的数据库视图索引等数据库对象,还可以用来创建删除修改数据库数据表的结构。
    主要的语句关键字包括 CREATEDROPALTER 等。
②DML(Data Manipulation Language、数据操作语言),用于 添加删除更新查询数据库记录,并检查数据完整性。
    主要的语句关键字包括 INSERTDELETE UPDATESELECT
③ DCL(Data Control Language、数据控制语言),用于定义数据库字段用户的访问权限安全级别
    主要的语句关键字包括 GRANT REVOKE COMMITROLLBACK SAVEPOINT 等。

1.3 SQL的使用规则

①SQL大小写规范
数据库名表名表别名字段名字段别名 等都小写
SQL 关键字函数名绑定变量 等都大写
MySQL基础篇SELECT语句总结

②注 释的使用
三种方式:

单行注释:#注释文字(MySQL特有的方式) 单行注释:
– 注释文字(–后面必须包含一个空格。)
多行注释:/* 注释文字 */

MySQL基础篇SELECT语句总结

2. 基本的查询语句

2.1 SELECT查询语句

(1)SELECT … FROM
SELECT         标识选择哪些列
FROM             标识从哪个表中选择
①选择全部列
使用语句:

 SELECT* FROMemployees;

MySQL基础篇SELECT语句总结

②选择特定的列

SELECTemployee_id,first_name,last_name FROMemployees;

MySQL基础篇SELECT语句总结

③列的别名

SELECTemployee_id,first_name,department_id dept_id FROMemployees;

MySQL基础篇SELECT语句总结

④去除重复行

SELECT DISTINCTdepartment_id FROMemployees;

MySQL基础篇SELECT语句总结

⑤空值参与运算

1.空值:null
2.NULL不等于0
3.不是空值的在参与运算之后的结果中,不会出现空值,在有空值参与的字段在运行之后的结果会是空值
4.解决空值参与运算的方法,使用IFNULL(字段名,参与运算的值[0])

SELECTsalary "月工资",salary * ( 1 + IFNULL( commission_pct, 0 ) ) * 12 "年工资",commission_pct FROMemployees;

MySQL基础篇SELECT语句总结

⑥ 着重号
实现:解决与数据库系统相同关键字的 数据
ORDER是进行排序的关键字,所以发生重复,需要使用着重号来进行标识

SELECT*FROM`order`;

总结:我们需要保证表中的字段、表名等没有和保留字数据库系统常用方法冲突。如果真的相同,请在SQL语句中使用一对 ``(着重号)引起来。

2.2 表结构展示

DESCRIBE employees;

MySQL基础篇SELECT语句总结

2.3 过滤数据

过滤掉不想要的数据,只显示自己想要的
实现查找部门编号是20的

SELECT *FROM employees WHERE department_id = 20;