【MySQL】基础介绍及表操作
目录
1.MySQL是什么?
2.为什么要学习数据库呢?
内存和硬盘的区别
3.数据库基本操作
1.创建数据库
2.使用数据库
3.删除数据库(慎用)
4.查看警告信息
5.查询当前数据可服务使用的编码集
7.表操作
1.创建一个学生成绩表
2.查看表结构
3.删除表
4.新增数据
5.问题:一次写入一条数据与一次写入多条数据,哪个效率更高?
6.查询表
1.全列查询
2.指定列查询
3.查询字段为表达式
4.起别名+去重
5.排序(asc为升序,desc为降序)
1.MySQL是什么?
他是一个数据库,数据库就是用来保存数据的应用程序
数据库底层用了一些哈市的数据结构来对数据进行增删改查
2.为什么要学习数据库呢?
我们之前学的Array List保存的数据是在内存里
数据库的数据保存在硬盘中
内存和硬盘的区别
3.数据库基本操作
1.创建数据库
CREATE DATABASE IF NOT EXISTS db_test1 CHARACTER SET utf8mb4;
show DATABASES;
2.使用数据库
USE db_test1;
3.删除数据库(慎用)
DROP DATABASE test01;
4.查看警告信息
show warnings;
5.查询当前数据可服务使用的编码集
show variables like '%character%';
7.表操作
1.创建一个学生成绩表
CREATE TABLE exam_result (id INT,name VARCHAR(20),chinese DECIMAL(3,1),math DECIMAL(3,1),english DECIMAL(3,1)
);
2.查看表结构
desc exam_result;
3.删除表
drop table if exists exam;
4.新增数据
-- 插入测试数据
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);
5.问题:一次写入一条数据与一次写入多条数据,哪个效率更高?
6.查询表
1.全列查询
select * from exam_result;
2.指定列查询
select id,name,chinese from exam_result;
3.查询字段为表达式
select id name,chinese+math+english as sum from exam_result;
4.起别名+去重
select distinct id name,chinese+math+english as sum from exam_result;
5.排序(asc为升序,desc为降序)
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