Mysql

在这里记录了MySql的基本操作,感兴趣的小伙伴可以快速查看哦!

1. 基本操作

-- 基本操作
SHOW DATABASES;
CREATE DATABASE IF NOT EXISTS `review_study`;
USE review_study;
DROP DATABASE `review_study`

2. 表操作

2.1 创建表

-- 创建表
CREATE TABLE IF NOT EXISTS `student_imformation`(id INT(3) NOT NULL  AUTO_INCREMENT,student_id INT(10) NOT NULL COMMENT 'ID',student_name VARCHAR(20) NOT NULL COMMENT '名字',student_academy INT(1) NOT NULL DEFAULT 1 COMMENT '学院编号',PRIMARY KEY (id)
)ENGINE = INNODB DEFAULT CHARSET=utf8;

2.2 修改表

-- 修改表
ALTER TABLE student_imformation RENAME AS students_imformation;ALTER TABLE students_imformation ADD school_name VARCHAR(30) DEFAULT '重庆邮电大学' COMMENT '学校';ALTER TABLE students_imformation MODIFY school_name VARCHAR(20) DEFAULT '四川大学' COMMENT '学校';
ALTER TABLE students_imformation CHANGE school_name this_school_name VARCHAR(30) DEFAULT '重庆邮电大学' COMMENT '学校';
ALTER TABLE students_imformation DROP this_school_name;

3. 外键

-- 外键(不建议使用)
ALTER TABLE student ADD CONSTRAINT `foreign_key` FOREIGN KEY student(`student_academy`) REFERENCE acdemy(`academy_id`);

4. 增删改查

4.1 改

UPDATE student SET student_id=2019213667,student_name='黄浩杰' WHERE student_id=2019213666;

4.2 增

INSERT INTO student(`student_id`,`student_name`,`student_academy`)
VALUES(2019212911,'郑信豪',3),(2019111011,'廖小姐',2),(2019212534,'许毅',3),(2019213666,'黄小明',1);INSERT INTO student(`student_id`,`student_name`,`student_academy`)
VALUE (2019523689,'草包李',1);

4.3 删

DELETE FROM student WHERE student_id=2019523689;TRUNCATE student;-- 删除整表,复制为全新新表,从头开始

4.4 查

-- 普通查询
SELECT * FROM student;
SELECT student_id AS `学号`,student_name AS '名字' FROM student;
SELECT DISTINCT student_academy AS 出现的学院 FROM student;-- select version();
-- select 7*3;
-- select @@auto_increment_increment;-- 采用where来进行模糊查询-- is null-- is not null-- between 2 and 3-- like -- in(1,2)
SELECT student_id AS `学号`,student_name AS '名字' FROM student WHERE student_name LIKE '郑%' AND student_academy IN(1,3);-- 连表查询
SELECT `student_id`,`student_name`,`academy_name`
FROM `student` AS a
INNER JOIN `academy` AS b
ON `student_academy`=`academy_id`;-- 自连接
SELECT a.`person`,b.`person`
FROM `self_join`AS a
INNER JOIN `self_join` AS b
ON a.person=b.belong;SELECT a.`student_id`,`student_name`,`gread`
FROM `student` AS a
INNER JOIN `grades` AS b
ON a.`student_id`=b.`student_id`
WHERE `student_academy` IN(SELECT `academy_id`FROM`academy`)
-- group by **
-- having **
ORDER BY `gread` DESC
LIMIT 0,2-- 查询各科的平均成绩
SELECT `subjectname`,AVG(`studentresult`) AS 平均成绩
FROM `result` AS a
INNER JOIN `subject` AS b
ON a.`subjectno`=b.`subjectno`
GROUP BY `subjectname`
HAVING AVG(`studentresult`)>80
ORDER BY AVG(`studentresult`) DESC
LIMIT 0,2

5. 函数

5.1 内置函数

-- 基本函数-- 数学-- 字符串-- 系统-- 时间和日期SELECT CURRENT_DATE;SELECT CURRENT_TIME;SELECT NOW();SELECT SYSDATE();SELECT YEAR(NOW());
INSERT INTO `now_time`(`time`) VALUE(CURRENT_TIME)
-- 聚合函数-- SUM()-- AVG()-- max()-- min()-- count(`名字`)-- count(1) 少量数据更快(一万条以内)-- count(*)
-- 加密函数
-- 不可逆加密-- MD5(`加密对象`)

5.2 自定义函数

-- 自定义函数
DELIMITER $$
CREATE FUNCTION mock_date()
RETURNS INT DETERMINISTIC
BEGINDECLARE num INT DEFAULT 2;DECLARE i INT DEFAULT 0;WHILE i<num DOINSERT INTO `now_time`(`time`) VALUE(CURRENT_TIME);SET i=i+1;
END WHILE;
RETURN i;
END;-- 调用
SELECT mock_date();-- 删除
DROP FUNCTION mock_date;

6. 索引

-- 索引-- primary key-- unique key-- key/index-- fulltext
-- 查询索引
SHOW INDEX FROM student-- 增加索引,不能修改索引名,只能删除后再进行操作
ALTER TABLE `student` ADD UNIQUE KEY `唯一索引`(`student_id`);

7. 事务

ACID

-- 事务-- ACID
SET autocommit=0;START TRANSACTION;
UPDATE grades SET gread=gread+20 WHERE id=2;
UPDATE grades SET gread=gread-20 WHERE id=1;
COMMIT;SET autocommit=1;

8. 用户管理

-- 用户管理
-- 删除用户
DROP USER ZhenXinhao
-- 创建用户 identifye
CREATE USER ZhenXinhao IDENTIFIED BY '123456'
-- 修改密码
ALTER USER 'ZhenXinhao'@'%' IDENTIFIED WITH mysql_native_password BY '826914'
-- 修改用户名
RENAME USER ZhenXinhao TO ZhengXinhao
-- 用户授权
GRANT ALL PRIVILEGES ON *.* TO ZhengXinhao
-- 查询权限
SHOW GRANTS FOR ZhengXinhao
-- 撤销权限
REVOKE ALL PRIVILEGES ON *.* FROM ZhengXinhao

MySql快速复习,看这一篇就够了!相关推荐

  1. Mysql全面总结(看这一篇就够了)

    声明:本文参考三太子敖丙的<Mysql总结> 断断续续看了许多mysql的文章,留在脑海的就是 事务 索引 集群 本文就梳理下所学的知识 1.存储引擎 1.1 InnoDB InnoDB ...

  2. Mysql执行计划-看这一篇就够了

    目录 1. 概述 2. 执行计划使用 2.1.执行计划详解 2.1.1. 执行计划-ID 2.1.2.执行计划select_type 2.1.3.执行计划-table 2.1.4.执行计划-type ...

  3. Mysql 备份恢复看这一篇就够了

    Mysql 备份恢复 一.备份分类.备份策略 1.1 造成数据丢失的原因: 程序错误 人为操作错误 运算错误 磁盘故障 灾难(如火灾.地震)和盗窃 1.2 数据库备份的分类 1)物理备份:对数据库操作 ...

  4. mysql ip比较大小_MySQL优化/面试,看这一篇就够了

    原文链接:http://www.zhenganwen.top/articles/2018/12/25/1565048860202.html 作者:Anwen~ 链接:https://www.nowco ...

  5. 基础 | 零散的MySql基础记不住,看这一篇就够啦

    ❝ 这是小小本周的第二篇,本篇将会着重的讲解关于MySql基础的内容,MySql基础看这一篇就够啦. ❞ 送书反馈与继续送书 之情小微信公众号第一次送书,Java深度调试技术,书已经被中奖者麦洛签收, ...

  6. 浙江万里学院计算机期末考,期末复习看这一篇推送就够了

    原标题:期末复习看这一篇推送就够了 叮!面对即将到来的2020, 小编在这里提前祝同学们 新年快乐~ 然而,比起新年大家又长大一岁来说, 更可怕的是-- 考试周到了! 提起期末考试, 作为学生的大家 ...

  7. 如何快速找到志同道合的人?看这一篇就够了

    如何快速找到志同道合的人?看这一篇就够了 一.前言 参加工作也有挺长一段时间了,一直以来自己也很希望可以真正为自己打拼一片天地,这应该也是大部分中产白领很希望做的事,有些人成功了,有些人在路上,而有些 ...

  8. docker 删除所有镜像_关于 Docker 镜像的操作,看完这篇就够啦 !(下)| 文末福利...

    紧接着上篇<关于 Docker 镜像的操作,看完这篇就够啦 !(上)>,奉上下篇 !!! 镜像作为 Docker 三大核心概念中最重要的一个关键词,它有很多操作,是您想学习容器技术不得不掌 ...

  9. 如何应对大数据分析工程师面试Spark考察,看这一篇就够了

    作者丨斌迪.HappyMint 来源丨大数据与人工智能(ID:ai-big-data) [导读]本篇文章为大家带来spark面试指南,文内会有两种题型,问答题和代码题,题目大部分来自于网络上,有小部分 ...

  10. 【系统架构设计师】软考高级职称,一次通过,倾尽所有,看完这篇就够了,方法和技巧这里全都有。

    目录 背景 报考条件 通过率 考试时间要求 系统架构设计师考试内容 证书的价值 备考建议 报班&自学 分享下我的自学方法 必胜法宝 分享我考试的心态 [系统架构设计师]软考高级职称,一次通过, ...

最新文章

  1. php pthread 实例,php 真正的多线程 pthread
  2. Uber新功能:隐藏司机乘客们的手机号码
  3. 『ACM-算法-数据结构』信息竞赛进阶指南--树状数组 (模板)
  4. 作者:王腾蛟(1973-),男,北京大学信息科学技术学院教授、博士生导师,北京大学文理大数据研究中心常务副主任。...
  5. Python-Day1 数据类型
  6. RAC11g使用数据泵导入导出报ORA-6512,ORA-25306,ORA-39079错
  7. 二分图中的最大匹配数等于最小点覆盖数的证明
  8. 【CoRL 2018】通过元策略优化的MBRL算法
  9. css中background-position:的属性值为百分比时的用法
  10. oracle for list,oracle – PL / SQL – 在Where子句中使用“List”变量
  11. 数据库设计规范(详细)
  12. idea安装findBugs 报idea运行项目报错Cannot run program
  13. 硬盘变成Raw格式 与 移动硬盘报I/O错误问题
  14. html实现点击出现小爱心
  15. 客户端呼叫Flash Medis Server3服务端入门
  16. iphone阅读html,iphone下Safari查看网页源代码
  17. matlab的数值积分
  18. 两篇科普文章【开创文章】
  19. 【BIM入门实战】Revit视图中图元看不见的原因总结
  20. LVM(Logical Volume Manager)逻辑卷管理

热门文章

  1. skin卓沿护肤品怎么样_卓沿白金护肤品怎么样 卓沿白金护肤品是哪个国家的
  2. 云计算是怎么定义的,核心技术有哪些?
  3. SpringBoot项目实战:员工管理系统
  4. 黑马程序员--Objective-C之--@property和@synthesize关键字
  5. struts2 漏洞测试工具
  6. 上班拍抖音需谨慎!Tiktok「科技网红」因自拍泄密被苹果解雇
  7. python Opencv和pyautogui实现自动识图点击
  8. Java中Lambda表达式使用及详解
  9. win10虚拟内存怎么设置最好_win10系统如何设置虚拟内存,看这里!
  10. 使用MindSpore报这个错是什么意思,RuntimeError: _Map_base::a