# 认识数据库
# 数据组织形式
库 => 表 => 数据
# 数据库管理软件
甲骨文 | MySQL | SQL Server | PostgreSQL | SQLite |
---|
# 数据库和SQL的关系
具有操作
- 数据的增加
- 数据的删除
- 数据的修改
- 数据的查询
- 数据库,数据表的管理
等等
而SQL语言,就是一种对数据库,数据进行操作,管理,查理的工具.
# 简单的数据库操作命令
命令 | 作用 |
---|---|
show databases | 查看有哪些数据库 |
use 数据库名 | 使用某个数据库 |
show tables | 查看数据库内有哪些表 |
exit | 退出命令行环境 |
# SQL语言基础
# 操作数据库的专用工具
- SQL全称: Structured Query Language,结构化查询语言,用于访问和处理数据库的标准的计算机语言SQL语言1974年由Boyce和Chamberlin提出,并首先在IBM公司研制的关系数据库系统SystemR上实现。
- 经过多年发展,SOL以成为数据库领域统一的数据操作标准语言,可以说几乎市面上所有的数据库系统都支持使用SQL语言来操作
# SQL语言的分类
-
数据定义(DDL)
库的创建删除,表的创建删除等
-
数据操纵(DML)
新增数据,删除数据
-
数据控制(DCL)
新增用户,删除用户,密码修改,权限管理等
-
数据查询(DQL)
基于需求查询和计算数据
# SQL的语法特征
- 大小写不敏感
- 可以单行或者多行书写,最后用;(分号)结束
- 支持注释
# 语法
- DDL 数据定义
- DML 数据操作
- DCL 数据控制
- DQL 数据查询
# DDL
# DDL-库管理
操作 | 作用 |
---|---|
show databases | 查看数据库 |
use 数据库名称 | 使用数据库 |
create database 数据库名称[charest UTF8] | 创建数据库 |
drop databases | 删除数据库 |
select database() | 查看当前使用的数据库 |
# DDL-表管理
操作 | 作用 |
---|---|
show tables(先选择) | 查看有哪些表 |
drop table 表名称; | 删除表 |
drop table if exists 表名称 | 创建 |
create table 表名称(列名称 列类型) | 创建表 |
列类型
类型 | 名字 |
---|---|
int | 整数 |
float | 浮点数 |
varchar | 文本,长度为数字,做最大长度限制 |
date | 日期类型 |
timestamp | 时间戳类型 |
# DML
1. INSERT 插入
2. DELETE 删除
3. UPDATE 更新
基础语法
插入
insert into 表[(列1,列2,......,列N)] values(值1,值2,......,值N)[,(值1,值2,......,值N),......,(值1,值2,......,值N)]
删除
delete from 表名称 [where 条件];
更新
update 表名 set 列 = 值 [where 条件判断];
# DQL
1. 基础查询
2. 分组聚合
3. 排序分页
1. 基础查询的语法
select 字段列表 |* FROM 表
- 过滤查询
select 字段列表 |* FROM 表 where 条件判断
分组聚合
select 字段|聚合函数 From 表 [where 条件] group by 列
聚合函数
sum(列) 求和
AVG(列) 求平均值
MIN(列) 求最小值
MAX(列) 求最大值
COUNT(列|*) 求数量
3. 排序和分页
select 字段|聚合函数 From 表
where #筛选
group by # 分组
order by [asc|desc] # 升序|降序
limit n[,m] # 跳过n行的显示,从n+1行开始显示m行
# 注意
执行顺序
from -> where ->group by 和 聚合函数 -> select -> order by -> limit
- where , group by , order by , limit
- select 和 from 是必写的