Mysql的命令大全

一、数据库

1、创建数据库
sql 复制代码
create database 数据库名 charset utf8;
2、查看数据库
sql 复制代码
show databases;
select databse();
3、删除数据库
sql 复制代码
drop databse 数据库名;
4、使用数据库
sql 复制代码
use 数据库名;

二、数据表

1、创建表
sql 复制代码
create table 表名(字段名 类型);
2、查看表
sql 复制代码
show tables;
3、修改表
sql 复制代码
alter table 表名 modify 字段名 char(6); # 修改字段数据类型
sql 复制代码
alter table 表名 rename 新表名;  # 修改表名
sql 复制代码
alter table 表名 add 字段名 数据类型;  # 新增字段
sql 复制代码
alter table 表名 drop 字段名;  # 删除字段
sql 复制代码
alter table 表名 chaneg 旧字段名 新字段名 数据类型; #修改字段名
4、查看表结构
sql 复制代码
desc 表名;
5、删除表
sql 复制代码
drop table 表名;

三、数据

1、插入数据
sql 复制代码
insert into 表名(字段名) values(数据)
2、查看数据
sql 复制代码
select 字段名 from 表名;
select * from 表名;
3、修改数据
sql 复制代码
update 表名 set 字段名="";
4、删除数据
sql 复制代码
delete from 表名;

四、数据类型

1、数值类型
类型 大小
int(整数) 4字节
float(浮点数) 4字节
double(浮点数) 8字节
smallint(整数) 2字节
bigint(整数) 8字节
2、日期类型
类型 格式
year YYYY(2014)
date YYYY-MM-DD(2014-12-31)
time HH:MM:SS(11:59:30)
datetime YYYY-MM-DD HH:MM:SS
timestamp YYYYMMDD HHMMSS
3、字符类型
类型 区别
char (定长)处理速度更快
vachar (不定长)存储空间少
4、枚举类型与集合类型
类型 区别
enum(枚举) 在给定范围选一个值
set(集合) 在给定范围选多个值

五、约束条件

1、完整性约束
sql 复制代码
create table students(name char(16),sex not null default '男'); # 如果输入性别为空,则默认为男
2、唯一性约束
sql 复制代码
create table students(id int unique,name char(16) unique); # unqie为唯一,可以有多个
3、主键
sql 复制代码
create table students(id int primary key,name char(16)); # 主键不能为空,且必须唯一
sql 复制代码
create table students(id int ,name char(16),primary key(id,name)); # 联合主键
4、自增
sql 复制代码
create table students(id int primary key auto_increment );
5、外键
sql 复制代码
create table students(id int, name char(6),foreign key(class_id) references class(id));

六、单表记录查询

1、定义显示格式
sql 复制代码
select concat('姓名:',name,'年龄',age)as decs from students;
2、去重
sql 复制代码
select distinct name,age from students;
3、条件约束
sql 复制代码
select * from students where age>=18;  # 单条件查询
select * from students where age>=18 and sex="男"; # 多条件查询
select * from students where age between 18 and 25;  # 范围查询
select * from students where name in ('hhq','zxy'); # 包含查询
select * from students where name like "黄%";  # 模糊查询
4、分组查询
聚合函数 作用
max 最大值
min 最小值
avg 平均值
sum 总值
count 计数
mysql 复制代码
select age,count(age) as '年龄人数' from students group by age;
5、过滤
mysql 复制代码
select age,count(age) as '年龄人数' from students group by age having 年龄人数>25;
6、排序
mysql 复制代码
select age from students order by age asc;  # 升序,默认升序
select age from students order by age desc;  # 降序
7、限数
mysql 复制代码
select * from students limit 10;

七、多表记录查询

1、基础查询(本质)
sql 复制代码
select * from studends,class where students.cls_id=class.id;
2、内连接
sql 复制代码
select * from students inner join class on students.cls_id=class.id;  # 查询2张表的共同部分
3、左连接
sql 复制代码
select * from students left join class on students.cls_id=class.id;  # 以左表为准,查询2张表的共同部分
4、右连接
sql 复制代码
select * from students right join class on students.cls_id=class.id;  # 以右表为准,查询2张表的共同部分
5、外连接
mysql 复制代码
select * from students left join class on students.cls_id=class.id
union
select * from students right join class on students.cls_id=class.id;  #同时以左表和右表为准,查询记录

八、视图

1、创建视图
sql 复制代码
create view 视图名 as select * from students where age>18;
2、修改视图
mysql 复制代码
alter view 视图名 as select * from students where age>20;
3、删除视图
sql 复制代码
drop view 视图名;

九、事务

1、开启事务
mysql 复制代码
start transaction;
2、提交事务
mysql 复制代码
commit;
3、回滚
mysql 复制代码
rollback;

十、索引

1、创建索引
复制代码
create index 索引名 on 表名(字段名);
相关推荐
lilian12922 分钟前
linux系统mysql性能优化
linux·运维·mysql
betazhou24 分钟前
SQL server之版本的初认知
数据库·oracle·goldengate·sql server·ogg·gdr
superonion062025 分钟前
【DB2】load报错SQL3501W、SQL3109N、SQL2036N
数据库
~ 小团子27 分钟前
每日一SQL 【每月交易 I】
数据库·sql
apihz1 小时前
VM虚拟机全版本网盘+免费本地网络穿透端口映射实时同步动态家庭IP教程
android·服务器·开发语言·网络·数据库·网络协议·tcp/ip
UestcXiye1 小时前
Rust Web 全栈开发(五):使用 sqlx 连接 MySQL 数据库
数据库·mysql·rust
Jane Chiu2 小时前
Oracle大表数据清理优化与注意事项详解
数据库
sniper_fandc2 小时前
Redis数据类型之list
数据库·redis·list
树谷-胡老师2 小时前
1965–2022年中国大陆高分辨率分部门用水数据集,包含:灌溉用水、工业制造用水、生活用水和火电冷却
大数据·数据库·arcgis
未来之窗软件服务2 小时前
MySQL 中图标字符存储问题探究:使用外挂法,毕业论文——仙盟创梦IDE
数据库·mysql·毕业论文·仙盟创梦ide·东方仙盟