常用的MySQL命令与SQL语句(全)

目录
1.MySQL服务命令
2.database数据库命令
3.table表命令
4.表数据操作(SQL语句)
 4.1 表数据的增删改查
 4.2 起别名, 去重,条件,排序,分页
 4.3 聚合函数,分组函数
 4.4 连接查询
 4.5 子查询
 4.6 外键约束的添加和修改
 4.7 SQL语句的格式与执行顺序

1.MySQL服务命令

说明命令
安装sudo apt-get install mysql-server mysql-client
查看是否安装apt-cache show mysql-server
查看进程是否存在ps aux | grep mysql
查看服务状态sudo service mysql status
启动/停止/重启服务sudo service mysql start/stop/restart
帮助mysql --help

2.database数据库命令

说明命令
登录mysql -u用户名 -p密码
登出exit/quit/ctrl+d
查询时间select now();
查看所有数据库show databases;
创建数据库create database 数据库名 charset=utf8;
查看创建表的语句show create database 数据库名;
使用数据库use 数据库名;
查看当前使用的数据库select database();
删除数据库drop database 数据库名;

3.table表命令

说明命令
查看当前数据库的表show tables;
创建表create table 表名 (字段名 类型 约束,字段名 类型 约束,…);
查看创建表的语句show create table 表名;
查看表结构desc 表名;
添加一个字段alter table 表名 add 字段 类型 约束;
修改字段名字和类型alter table 表名 change 原字段名 新字段名 类型 约束;
修改字段类型和约束alter table 表名 modify 字段 类型 约束;
删除字段alter table 表名 drop 字段名;
删除表drop table 表名;

4.表数据操作

4.1 表数据的增删改查

select,insert,update,delete

说明SQL语句
1. 查询
查询所有列数据select * from 表名;
查询指定列数据select 列名 1, 列名 2 from 表名;
2. 添加
全列插入insert into 表名 value (数据);
插入指定列数据insert into 表名(列名1, 列名2 …) values(数据值1, 数据值2, …);
插入多行数据insert into student(name, age) value (‘赵子龙’, 48), (‘刘备’, 55), (‘关二哥’, 53);
3. 修改
修改数据update 表名 set 列名1=值,列名2=值 where 条件(id=7);
4. 删除
物理删除(不建议)delete from student where id = 8;
逻辑删除(推荐),修改字段的值,0 未删除,1 删除alter table student add is_delete bit default 0 not null;
>>update student set is_delete = 1 where id = 2;
>>select * from student where is_delete = 0;
4.2 起别名, 去重,条件,排序,分页

as,distinct,where,order by,limit

关键字SQL语句
1.as
给字段起别名select name as 姓名, age 年龄 from student;
给表起别名select s.name as 姓名, s.age 年龄 from student as s;
2.distinct
去重select distinct age from student;
3.where
条件查询select * from 表名 where 条件;
4.order by
排序(默认升序)select * from 表名 where 条件 order by 列名1, 列名2 …;
5.limit
分页查询select * from 表名 where 条件 order by 列名1, 列名2 … limit start , count;

知识点:

where

  • 比较运算符:> >= < <= = != <>
  • 逻辑运算符:and,or,not
  • 模糊查询:like,%,_
  • 范围查询:Between and,in()
  • 判空:is null,is not null

order by

  • 升序asc,默认
  • 降序desc
4.3 聚合函数,分组函数

avg()… ,group by

说明SQL语句
1.聚合
统计select count(height) from student;
均值select avg(height) from student;
2.分组函数
group by 分组select gender from student group by gender;
group_concat(显示不同性别分别有多少人)select gender, group_concat(name) , count(name) from student group by gender;
having(根据gender分组,统计分组条数大于2)select gender, group_concat(name) , count(name) from student group by gender having count(*) > 2;
with rollup(统计汇总聚合函数的信息)select gender, group_concat(name) , count(name) from student group by gender with rollup;

知识点:

聚合函数

  • count()
  • max()
  • min()
  • sum()
  • avg()
  • group_concat()

分组函数

  • group by + 聚合函数
  • group by + having
  • group by + with rollup
4.4 连接查询
说明SQL语句
内连接(交集)select 字段 from 表1 inner join 表2 on 表1.字段1 = 表2.字段2
左连接(显示左表内容)select * from 表 1 as 表1 left join 表 2 as 表 2 on 连接条件
右连接(显示右表内容)select * from 表 1 as 表1 right join 表 2 as 表 2 on 连接条件
自连接(必须起别名)select c.id, c.title, c.pid, p.title from areas as c inner join areas as p on c.pid = p.id where p.title = ‘山西省’;
4.5 子查询
说明SQL语句
语句嵌套(查询大于平均年龄的学生)select * from student where age > (select avg(age) from student);
4.6 外键约束的添加和修改
说明SQL语句
添加外键约束alter table 从表 add foreign key(外键字段) references 主表(主键字段);
删除外键约束alter table 表名 drop foreign key 外键名;

添加外键的两种方法:

  • 在已经存在的字段添加外键约束
  • 在创建数据表时设置外键约束 --> foreign key(外键字段) references 主表(主键字段);
4.7 SQL语句的格式与执行顺序

SQL语句的格式:

select 列名 1, 列名 2, 聚合函数
from1 [inner|left|right] join2 
on  条件
where 条件 
group by 列名 1, 列名 2 
having 条件    
order by 列名1, 列名2 ... 
limit start , count;

SQL语句完整的执行顺序:

  1. from
  2. Where
  3. group by
  4. 聚合函数
  5. having
  6. Select
  7. Order by
  8. Limit
  • 2
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值