MySQL知识回顾_mysql知识点回顾

这篇博客详细回顾了MySQL中的核心知识点,包括数据库和表的创建、查询、修改及删除操作。介绍了CREATE DATABASE、ALTER TABLE、INSERT INTO、DELETE FROM、UPDATE等SQL语句的使用,以及视图、索引的创建和管理。此外,还涵盖了数据表的四大操作、各种连接查询、聚合函数以及日期函数的应用。内容深入浅出,是数据库管理者的必备参考。
摘要由CSDN通过智能技术生成

mysql知识点回顾

数据库与表

创建数据库

CREATE DATABASE [数据库名];

选择数据库

USE [数据库名];

显示所有数据库

SHOW DATABASES;

创建数据表

CREATE TABLE (

,

,

...

) DEFAULT CHARSET=utf8;

延伸:约束

AUTO_INCREMENT -- 自动递增

NOT NULL -- 不为空

UNIQUE -- 唯一 # 一个表可能存在多个唯一

PRIMARY KEY -- 主键【NOT NULL + UNIQUE】 # 一个表只能有一个主键

FOREIGN KEY -- 外键

CHECK -- 符合条件

DEFAULT -- 默认值

显示所有数据表

SHOW TABLES;

显示创建数据库或者特定MySQL语句

SHOW CREATE DATABASE [数据库名];

SHOW CREATE TABLE [数据表名];

删除数据库&数据表

DROP DATABASE [数据库];

DROP TABLE [数据表];

清空数据表

TRUNCATE TABLE [数据表];

修改数据表

ALTER TABLE [数据表] ADD [列名] [类型] -- 增

ALTER TABLE [数据表] DROP COLUMN [列名] -- 删

ALTER TABLE [数据表] MODIFY [列名] [类型] -- 改

数据表四大操作: [增] + [删] + [改] + [查]

[增]

INSERT INTO -- 向数据表插入新数据

方式一:无需指定列名

INSERT INTO [数据表名]

VALUES (

value1, value2, value3,

...

);

方式二:指定列名

INSERT INTO [数据表名] (

column1, column2, column3,

...

)

VALUES (

value1, value2, value3,

...

);

难点:

INSERT INTO SELECT 与 SELECT INTO FROM

insert into scorebak select * from socre where neza='neza' -- 插入一行,要求表 scorebak 必须存在

select * into scorebak from score where neza='neza' -- 也是插入一行,要求表 scorebak 不存在

[删]

DELETE -- 从数据表删除数据

DELETE FROM [数据表] WHERE some_column=some_value; # 慎用DELETE,因为如果没有设WHERE条件,就会删除数据表所有数据

[改]

UPDATE [数据表]

SET column1=value1, column2=value2, ...

WHERE some_column=some_value; # 注意UPDATE,因为如果没有设WHERE条件,就会更新数据表所有数据

[查]

SELECT column1, column2, ...

FROM table_name;

延伸: 查询连接 UNION

UNION条件:

内部的每个SELECT语句必须拥有相同数量的列

列也必须拥有相似的数据类型

UNION: 没有重复

UNION ALL: 可以重复

排序

SELECT column1, column2, ...

FROM [数据表]

ORDER BY column ASC|DESC, column ASC|DESC -- 升序|降序

聚合

SELECT column1, aggregate_function(column2)

FROM [数据表]

WHERE column [条件]

GROUP BY column1

HAVING aggregate_function(column2); # WHERE不能和聚合函数一起使用,因此使用HAVIING

延伸: 表连接 JOIN

JOIN【INNER JOIN】 -- 内连接

LEFT JOIN -- 左连接

RIGHT JOIN -- 右连接

FULL JOIN -- 全连接【MySQL没有】

延伸:

聚合函数 SQL Aggregate 函数

AVG() -- 返回平均值

COUNT() -- 返回计数

MAX() -- 返回最大值

MIN() -- 返回最小值

SUN() -- 总和

日期函数 DATE 函数

NOW() -- 返回当前日期和时间

CURDATE() -- 返回当前日期

CURTIME() -- 返回当前时间

DATE() -- 提取日期或日期/时间表达式的日期部分

EXTRACT() -- 返回日期/时间的单独部分

DATE_ADD() -- 向日期添加指定时间间隔

DATE_SUB() -- 向日期减去指定时间间隔

DATEDIFF() -- 返回两个日期的天数

DATE_FORMAT() -- 用不同的格式显示日期/时间

视图

[新增+更新]

CREATE VIEW [视图名] AS

SELECT column, column, ...

FROM [数据表]

WHERE condition;

[删除]

DROP VIEW [视图名];

索引

[增]

方式一: 允许重复

CREATE INDEX [索引名]

ON [数据表名] (column1,column2);

方式二: 不允许重复

CREATE UNIQUE INDEX [索引名]

ON [数据表名] (column1,column2);

[删]

ALTER TABLE [数据表名] DROP INDEX [索引名];

其他

显示用户权限

SHOW GRANTS;

显示异常或者错误

SHOW ERROR;

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值