MySql基础
2025-03-03 12:02:00DDL-数据库操作
1.查询
SHOW DATABASES;#查询所有数据库
SELECT DATABASE();#查询当前数据库
2.创建
CREATE DATABASE [IF NOT EXISTS] 数据库名 [DEFAULT CHARSET 字符集] [COLLATE 排序规则]
#简写
CREATE DATABASE 数据库名
#样例
CREATE DATABASE IF NOT EXISTS 数据库名 DEFAULT CHARSET utf8mb4 COLLATE utf8mb4_unicode_ci
注:1.utf8mb4_unicode_ci 是基于标准的Unicode来排序和比较,能够在各种语言之间精确排序,不区分大小写
2.utf8mb4_general_ci 没有实现Unicode排序规则,在遇到某些特殊语言或者字符集,排序结果可能不一致,不区分大小写
3.删除
DROP DATABASE [IF EXISTS] 数据库名
4.使用
USE 数据库名
DDL-表操作
1.查询
SHOW TABLES;#查询当前数据库所有表
DESC 表名;#查看表结构(表头 字段|类型)
SHOW CREATE TABLE 表名;#查询创建的表
2.创建(表头)
CREATE TABLE 表名(
字段 字段类型[COMMENT 注释]
)[COMMENT 注释]
#样例
CREATE TABLE table1(
name varchar(3) comment "xxx"
) comment "xxx"
3.修改
ALTER TABLE 表名 ADD 字段名 类型 [COMMENT 注释]#添加字段
MODIFY 字段名 数据类型 #改类型
CHANGE 旧字段名 新字段名 类型 [COMMENT 注释] #全改
DROP 字段名#删除字段
RENAME TO 新表名#改表名
4.删除
DROP TABLE [IF EXISTS] 表名 #删除表
TRUNCATE TABLE 表名 #清空表(删除后重新创建)
DML-表数据操作
1.插入
INSERT INTO 表名(字段,...) VALUES(值,...);#赋值与字段一一对应
INSERT INTO 表名 VALUES(值,...);#表头赋值完
INSERT INTO 表名(字段,...) VALUES(值,...),(值,...)#批量插入与字段对应
INSERT INTO 表名 VALUES(值,...),(值,...)#批量插入与表头对应
(字段名1,字段名2,...)
(值1 ,值2 ,...)
2.修改
UPDATE 表名 SET 字段名1=值1,... [WHERE 条件]
3.删除
DELETE FROM 表名 [WHERE 条件]
DQL-表查询
SELECT
字段列表
FROM
表名列表
WHERE
条件列表
GROUP BY
分组字段列表
HAVING
分组后条件列表
ORDER BY
排序字段列表(ASC 升序;DESC 降序)
LIMIT
begin_index,length
#样例
SELECT 字段1,... FROM 表名,... WHERE 字段 [LIKE '_%_ad']
LIKE 通配符'_'匹配一个字符,'%'匹配任意字符
#执行顺序
FROM->WHERE->GROUP BY->HAVING->SELECT->ORDER BY->LIMIT
聚和函数
COUNT 统计数量
MAX 最大值
MIN 最小值
AVG 平均值
SUM 求和
SELECT 函数() from 表名