一:MySQL
1、下载MySQL: https://downloads.mysql.com/archives/installer
2、密码:123456
第二阶段-第二章-03-MySQL安装_哔哩哔哩_bilibili
3、cmd--->mysql -uroot -p
show databases :查看有哪些数据库
use 数据库名 :使用某个数据库
show tables :查看数据库内有哪些表
exit :退出mysql的命令行环境
二:DBeaver
1、下载DBeaver: https://dbeaver.io/download 选择免费的社区版(DBeaver Community)
2、连接数据库---MySQL
三:数据库增删改查
(1)、SQL_DDL查看、删除、创建(增删改查)
-- 我是注释,我必须带空格
# 我是注释
/*
我
是
注释
*/
-- 特征:
/*
大小写不敏感
需以;号结尾
支持单行,多行注释
*/
-- 查看数据库
show databases;
SHOW databases;
-- 使用数据库
use world;
-- 查看当前使用的数据库
select database();
-- 创建数据库
creat database test charset utf8;
-- 删除数据库
drop database test;
----示例1
use world;
select database();
----示例2:选择某一行只执行该行
CREATE database <test> charset utf8;
SHOW databases;
drop database test;
----------------------------------------------------------------
use world;
-- 查看有哪些表
show tables;
-- 创建表
create table student(
id int,
name varchar(10), -- 最长是255
age int
);
-- 左边选择”表“,然后按F5刷新。
-- 列类型有
/*
int -- 整数
float -- 浮点数
varchar(长度) -- 文本,长度为数字,做最大长度限制
date -- 日期类型
timestamp -- 时间戳类型
*/
-- 删除表
drop table student;
drop table if EXISTS STUDENT;
(2)、SQL_DML插入删除更新
create table student(
id int,
name varchar(10),
age int
);
/*
insert into student(id) values(1);
insert into student(id) values(2);
insert into student(id) values(3);
insert into student(id) values(4);
*/
-- 表中增加列、增加列和内容
insert into student(id) values(1),(2),(3);
insert into student(id,name,age) values(4,'周杰伦',31),(5,'林俊杰',33);
insert into student values(6,'张学友',31),(7,'王力鸿',33);
/*
数据删除:
DELETE FROM 表名称 [WHERE 条件判断];
条件判断:列 操作符 值
操作符: = < > <= >= !=等等,如
id = 5
id < 3
id >=6
id !=5
*/
-- 删除表
delete from student where id < 4;
delete from student where id > 6;
delete from student where age = 33;
delete from student; -- 危险操作,删掉整个student库
/*
数据更新:
UPDATE 表名 SET 列=值 [WHERE 条件判断];
条件判断:列 操作符 值
操作符: = < > <= >= !=等等,如
id = 5
id < 3
id >=6
id !=5
*/
insert into student(id,name,age) values(4,'周杰伦',31),(5,'林俊杰',33);
update student set name = '张学友' where id = 4;
update student set name = '张力鸿' ; -- 危险操作,整张表的name都改为王力宏
(3)、SQL_DQL查询分组聚合排序分页
show tables;
-- 删除原有重名数据库
drop table if EXISTS STUDENT;
drop table STUDENT;
-- student表创建
create table student(
id int,
name varchar(20),
age int,
gender varchar(20)
);
-- student数据写入
insert into student(id,name,age) values(10001,'周杰轮',31,'男'),(10002,'王力鸿',33,'男'),(10003,'蔡依琳',35,'女'),(10004,'林志灵',36,'女'),(10005,'刘德滑',33,'男'),(10006,'张大山',10,'男'),(10007,'刘志龙',11,'男'),(10008,'王潇潇',33,'女'),(10009,'张一梅',20,'女'),(10010,'王一倩',13,'女'),(10011,'陈一迅',31,'男'),(10012,'张晓光',33,'男'),(10013,'李大晓',15,'男'),(10014,'吕甜甜',36,'女'),(10015,'曾悦悦',31,'女'),(10016,'刘佳慧',21,'女'),(10017,'项羽凡',23,'男'),(10018,'刘德强',26,'男'),(10019,'王强强',11,'男'),(10020,'林志慧',25,'女');
-- 查询
select id,name from student;
select id,name,age,gender from student;
select * from student; -- 选择全部的列
/*
SELECT 字段列表|* FROM 表 WHERE 条件判断
*/
select * from student where gender = '男';
-- 分组、聚合
/*
SELECT 字段|聚合函数 FROM 表 [WHERE 条件] GROUP BY 列
聚合函数:
SUM(列) 求和
AVG(列) 求平均值
MIN(列) 求最小值
MAX(列) 求最大值
COUNT(列|*) 求数量
*/
select gender, avg(age) from student group by gender;
-- select gender,name, avg(age) from student group by gender; 报错,因为name
select gender, avg(age),sum(age),min(age),max(age),count(gender) from student group by gender;
-- 排序、分页
/*
SELECT 列|聚合函数|* FROM 表
WHERE ...
GROUUP BY ...
ORDER BY ...[ASC|DESC]
LIMIT n[,m]
*/
select * from student where age >20;
select * from student where age >20 order by age desc;
select * from student limit 5; -- 取前5条
select * from student limit 10,5; -- 取第10条开始的后面的5条
-- 综合案例:关键字顺序
select age,count(*) from student where age > 20 group by age
order by age limit 3;