day4、5 数据库(2022-02-24、25)
2022-02-24 本文已影响0人
胖胖胖虎
-
数据库技术就是帮我们存储管理大量数据,数据库本质上就是一种软件
常见数据库软件
1.mysql (制作人小女儿may名字命名)开源
2.oracle 甲骨文 付费 -
数据库软件是以服务的形式存在,没有界面不能直接使用
使用时需要再安装数据库客户端软件,连接数据库软件(本文使用Navicat for MySQL) -
数据库阶段需要学习 sql(结构化查询语言)
它是和数据库沟通的语言,第四代编程语言 -
数据库中存储数据的载体是一张张所谓的表,一张表存储一类信息,存储数据前,需要我们先明确数据的格式
一张表先要确定数据的格式-------列
再去存储具体的数据--------行 -
字符集(支持的语言种类)
utf-8 (支持地球上所有语言)
GBK GB2312
sql 基本语法
- 关键字 具有语法含义的单词(不区分大小写 建议大写)
- 名字 不能使用关键字 名字不能有空格 不能是数字开头
- 标点符号 必须是英文 括号必须成对
- 可读性(适当的换行)
常用数据类型
1.字符型 varchar(n) n代表最大长度
2.整数型 int
![](https://img.haomeiwen.com/i19395646/c8b43dd4df57dae1.png)
- 建表语句
CREATE TABLE 员工表(
姓名 VARCHAR(30),
职位 VARCHAR(10),
入职日期 DATE,
薪资 DOUBLE,
部门 varchar(10)
);
- 增加数据语句
INSERT INTO 员工表
VALUES('大明','经理','2001-10-10',8888.88,'综合部');
数据的个数要和表中的列一致
数据的顺序要和表中的行一致
字符数据需要使用引号括起来,建议单引号
数字型数据直接写
- 删除数据语句
DELETE FROM 表名
[
WHERE 列名 比较符号 比较数据
]
比较符号有 > < = >= <= !=
DELETE FROM 员工表;
DELETE FROM 员工表
WHERE 薪资>7000;
- 修改数据语句
UPDATE 表名
SET 列名=新数据,列名=新数据
[
WHERE 列名 比较符号 比较数据
]
UPDATE 员工表
SET 部门='综合部';
UPDATE 员工表
SET 薪资=5555.55,部门='运营部'
WHERE 姓名='小明';
- 查看表中数据记得刷新
- 查询数据语句
SELECT 列名(多列中间用逗号分隔);*代表所有列(运行速度慢,不建议使用)
FROM 表名
SELECT 姓名,部门,职位
FROM 员工表;
数学计算公式(使用AS关键字给查询结果命名新标题)
SELECT 姓名,入职日期,薪资,薪资*12+5000 AS 年薪
FROM 员工表;
查一列数据时使用DISTINCT关键字去除重复数据
SELECT DISTINCT 职位
FROM 员工表;
查询薪资大于5000的员工
SELECT 姓名,薪资
FROM 员工表
WHERE 薪资>=5000;
查询入职时间晚于2010-1-1
SELECT 姓名,入职日期
FROM 员工表
WHERE 入职日期>'2010-1-1';
查询薪资在5000~8000范围的员工
SELECT 姓名,薪资
FROM 员工表
WHERE 薪资 BETWEEN 5000 AND 8000;
查询入职日期在2010年的员工
SELECT 姓名,职位,入职日期
FROM 员工表
WHERE 入职日期 BETWEEN '2010-1-1' AND '2010-12-31';
模糊查询 值中需要使用%(通配符) 代表任意长度任意字符
查询姓小的员工
SELECT 姓名,部门
FROM 员工表
WHERE 姓名 LIKE '小%';
查询姓名中有明的员工
SELECT 姓名,部门
FROM 员工表
WHERE 姓名 LIKE '%明%';
查询员工薪资并排序(默认升序 加上关键字DESC变为降序)
SELECT 姓名,薪资
FROM 员工表
ORDER BY 薪资 DESC;