刚学完MySQL基础感觉掌握不牢固,需要系统复习一下,就花了一下午时间作了这个思维导图,基本涵盖了所有MySQL基础内容,可以作为复习参考使用,分享给各位
原版:注释版:
CREATE DATABASE test01 CHARACTER SET utf8 COLLATE utf8_bin;
#备份
DROP DATABASE test01;
#恢复
CREATE TABLE `name`(
`name` VARCHAR(255),
id INT,
class INT);
SELECT * FROM `name`;
INSERT INTO `name` (id,`name`,class) VALUES
(1,'韩信',1),
(2,'庞统',1),
(3,'刘邦',1),
(4,'诸葛亮',2),
(5,'萧何',2),
(6,'周瑜',2),
(7,'司马懿',3),
(8,'关羽',3),
(9,'张飞',3)
SELECT * FROM `name0`;
DROP DATABASE test01;
ALTER TABLE `name`
ADD chinese INT NOT NULL DEFAULT 0 AFTER id;
ALTER TABLE `name`
DROP chinese;
ALTER TABLE `name`
MODIFY id INT PRIMARY KEY AUTO_INCREMENT;
ALTER TABLE `name`
CHANGE chinese math INT;
RENAME TABLE `name` TO name0;
ALTER TABLE `name0`
CHARACTER SET utf8;
INSERT INTO
`name0` (`name`,class)
VALUES
('曹操',4),
('刘备',4),
('孙权',4);
ALTER TABLE `name0`
MODIFY math INT DEFAULT 0;
UPDATE `name0`
SET math = 0
WHERE class = 4;
START TRANSACTION;
SAVEPOINT a;
DELETE FROM `name0` WHERE `name`='孙权';
ROLLBACK TO a;
COMMIT;
SELECT * FROM `name0`;
SELECT class
FROM `name0`
WHERE id = 1
UPDATE `name0`
SET math = id + 88 - 2*class;
SELECT *
FROM `name0`
ORDER BY math;
SELECT COUNT(id)
FROM `name0`
WHERE class = 4;
SELECT SUM(math)
FROM `name0`
WHERE class = 4;
SELECT AVG(math)
FROM `name0`
WHERE class = 4;
SELECT AVG(math) AS a
FROM `name0`
GROUP BY class
HAVING a<>90;
SELECT CONCAT(`name`,'oo') AS `name~`
FROM `name0`
SELECT INSTR(`name`,'信')
FROM `name0`;
SELECT `name`,REPLACE(`name`,'信','愈')
FROM `name0`;
SELECT `name`,SUBSTRING(`name`,1,1)
FROM `name0`;
SELECT *
FROM `name0`
WHERE `name` LIKE '刘%';
SELECT *
FROM `name0`
LIMIT 0,3;
CREATE TABLE `name1`
LIKE `name0`;
SELECT * FROM `name1`;
INSERT INTO `name1`
(`name`,id,math,class)
SELECT * FROM `name0`;
SELECT * FROM `name1`
UNION ALL
SELECT * FROM `name1`;
CREATE INDEX name_index ON `name1`(`name`);
SHOW INDEX FROM `name1`;
DROP INDEX name_index ON `name1`;
CREATE VIEW name_view AS
SELECT * FROM `name1`;
DESC name_view;
DROP VIEW name_view;