MySQL
数据库的相关概念
一、数据库的好处
- 可以持久化数据到本地
- 结构化查询
二、数据库的常见概念
- DB(Data Base):数据库,存储数据的容器
- DBMS(Data Base Management System):数据库管理系统,又称为数据库软件或数据库产品,用于创建或管理DB
- SQL(Structured Query Language):结构化查询语言,用于和数据库通信的语言,不是某个数据库软件特有的,而是几乎所有的主流数据库软件通用的语言
三、数据库存储数据的特点
- 数据存放到表中,然后表再放到库中
- 一个库中可以有多张表,每张表具有唯一的表名用来标识自己
- 表中有一个或多个列,又称为“字段”,相当于Java中的属性
- 表中的每一行数据,相当于Java中的对象
四、常见的数据库管理系统
MySQL、Oracle、DB2,SQLserver
MySQL的介绍
一、MySQL的背景
前身属于瑞典的一家公司,MySQL AB
2008年被Sun公司收购
2009年Sun被Oracle收购
二、MySQL的优点
- 开源、免费、成本低
- 性能高、移植性好
- 体积小,便于安装
三、MySQL的安装
属于c/s架构的软件,一般来讲安装服务端
四、MySQL服务的启动和停止
方式一:通过命令行
net start 服务名
net stop 服务名
方式二:计算机 – 右键 – 管理 – 服务
五、MySQL服务的登录和退出
登录:mysql [-h 主机名 -P 端口号] -u 用户名 -p密码
退出:exit或⌃C
DQL语言
基础查询
一、语法
select 查询列表
from 表名;
二、特点
- 查询列表可以是字段、常量、表达式、函数,也可以是多个
- 查询结果是一个虚拟表
三、示例
- 查询单个字段
select 字段名 from 表名;
- 查询多个个字段
select 字段名 ,字段名 from 表名;
- 查询所有字段
select * from 表名;
- 查询常量
select 常量值;
注意:字符型和日期型的常量值必须用单引号引起来,数值型不需要
- 查询函数
select 函数名(实参列表);
- 查询表达式
select 1000%98;
- 起别名
① AS --> SELECT last_name AS 姓,first_name AS 名 FROM employees;
② 空格 --> SELECT last_name 姓,first_name 名 FROM employees;
- 去重
select distinct 字段名 from 表名;
作用:做加法运算
select 数值+数值; 直接运算
select 字符+数值; 先试图将字符转换成数值,如果转换成功,则进行数值运算;否则将字符转换成数值0,再做运算
select null+值; 结果为null
- 【补充】concat函数
功能:拼接字符
select concat(字符1,字符2,字符3,…);
- 【补充】ifnull函数
功能:判断某字段或表达式是否为null,如果为null,返回指定的值,否则返回原本的值
select ifnull(commision_pct,0) from employees; 其中commision_pct是一个字段名
- 【补充】isnull函数
功能:判断某字段或表达式是否为null,如果是null,则返回1,否则返回0
条件查询
一、语法
select 查询列表
from 表名
where 筛选条件;
二、筛选条件的分类
- 简单条件运算符
> < = >= <= != <> <=>安全等于
- 逻辑运算符
&& and
|| or
! not
- 模糊查询
like:一般搭配通配符使用,可以判断字符型或数值型
通配符:%任意多个字符,_任意单个字符
between and
in
is null / is not null:用于判断null值
isnull 和 <=>的比较
普通类型的数值 | null值 | 可读性 | |
---|---|---|---|
is null | 不可以 | 可以 | 好 |
<=> | 可以 | 可以 | 差 |