目录
1.MySQL是什么?
2.为什么要学习数据库呢?
内存和硬盘的区别
3.数据库基本操作
1.创建数据库
2.使用数据库
3.删除数据库(慎用)
4.查看警告信息
5.查询当前数据可服务使用的编码集
7.表操作
1.创建一个学生成绩表
2.查看表结构
3.删除表
4.新增数据
5.问题:一次写入一条数据与一次写入多条数据,哪个效率更高?
6.查询表
1.全列查询
2.指定列查询
3.查询字段为表达式
4.起别名+去重
5.排序(asc为升序,desc为降序)
他是一个数据库,数据库就是用来保存数据的应用程序
数据库底层用了一些哈市的数据结构来对数据进行增删改查
我们之前学的Array List保存的数据是在内存里
数据库的数据保存在硬盘中
CREATE DATABASE IF NOT EXISTS db_test1 CHARACTER SET utf8mb4;
show DATABASES;
USE db_test1;
DROP DATABASE test01;
show warnings;
show variables like '%character%';
CREATE TABLE exam_result (
id INT,
name VARCHAR(20),
chinese DECIMAL(3,1),
math DECIMAL(3,1),
english DECIMAL(3,1)
);
desc exam_result;
drop table if exists exam;
-- 插入测试数据
INSERT INTO exam_result (id,name, chinese, math, english) VALUES
(1,'唐三藏', 67, 98, 56),
(2,'孙悟空', 87.5, 78, 77),
(3,'猪悟能', 88, 98.5, 90),
(4,'曹孟德', 82, 84, 67),
(5,'刘玄德', 55.5, 85, 45),
(6,'孙权', 70, 73, 78.5),
(7,'宋公明', 75, 65, 30);
insert into exam_result(id,name,chinese,math,english) values (8,'小金',90,99,90);
select * from exam_result;
select id,name,chinese from exam_result;
select id name,chinese+math+english as sum from exam_result;
select distinct id name,chinese+math+english as sum from exam_result;
1.语文成绩从高到低排序
select id, name, chinese from exam_result order by chinese desc;
2. 使用别名将总成绩升序排列
select id, name, chinese+math+english as sum from exam_result order by sum asc;
3.对多个字段进行排序,排序优先级随书写顺序
SELECT name, math, english, chinese FROM exam_result