- 数据库的好处
- 可以持久化数据到本地
- 结构化查询(方便管理)
- 数据库常见概念
- DB:数据库,存储数据的容器
- DBMS:数据库管理系统,又称为数据库软件或数据库产品,用于创建或管理 DB
- SQL:结构化查询语言,用于和数据库通信的语言,不是某个数据库软件特有的,而是几乎所有的主流数据库软件通用的语言
- 数据库存储数据的特点
- 数据存放到表中,然后表再放到库中
- 一个库中可以有多张表,每张表具有唯一的表名用来表示自己
- 表中有一个或多个列,列又称为字段,相当于 python 中的属性
- 表中的每一行数据,相当于 python 中的对象
- MySQL 优点
- 开源、免费、成本低
- 性能好,移植性好
- 体积小,便于安装
- MySQL 的安装
- 属于 c/s 架构的软件,一般来讲安装服务端
-
MySQL 服务器的启动与停止
方式一:通过命令行
net start 服务名
net stop 服务名
方式二:计算机-右击-管理-服务 -
MySQL 服务的登陆与退出
- 登录:
mysql [-h 主机名] [-p 端口号] -u 用户名 -p 密码
- 退出:exit 或 \q 或 ctrl+c
DQL 语言(查询语言)
语法
select 查询列表
from 表名;
特点
- 查询列表可以是字段、常量、表达式、函数,也可以是多个
- 查询结果是一个虚拟表
基础查询
- 查询单个字段
select 字段名 from 表名;
- 查询多个字段
select 字段名, 字段名 from 表名;
- 查询所有字段
select * from 表名;
- 查询常量值
select 常量名;
注意:字符型和日期型的常量值必须用单引号引起来,数值型不用 - 查询函数
select 函数名();
注:MySQL 中的函数必须有返回值,相当于查看了函数的函数体并且返回了返回值 - 查询表达式
比如数学中的加减乘除取模 - 起名
用 as 或者 空格 - 去重
用 distinct,比如 select distinct name from student;
注:一次尽量只去重一个字段,如果字段多,则为全都满足的才去重,只满足一个的不去重 -
作用:做加法运算
select 数值+数值; //直接运算
select 字符+数值; //先试图将字符转换成数值,如果转换成功,则继续运算;否则转换成0,在做运算
select null+值; //结果都为 null
- concat 函数
功能:拼接字符
select concat(字符1,字符2,字符3,…); - innull 函数
功能:判断某字段或表达式是否为 null,如果为 null,返回指定的值,否则返回原本的值
select ifnull(commission_pct, 0) from employees; - isnull 函数
功能:判断字段或者表达式是否为 null,true 返回 1,false 返回 0
条件查询
- 简单条件运算符
< > <= >= <> != = <=>安全等与
- 逻辑查询
&& and 与
|| or 或
! not 非
- 模糊查询
like,between...and..., in, is null, is not null
like:一般搭配通配符使用,用于判断字符型或者数值型
通配符:% 表示任意多个字符,_ 表示任意一个字符 - 排序:order by,asc 是升序,desc 是降序,可以进行多个字段排序,顺序是谁在前面,就先按谁排,当前面字段内容相同时,再按后面的规则排序
不仅字段,也可以是函数,表达式,别名
order by 一般放在最后面,limit 除外