java
2025-02-20 19:17:46 3 举报
AI智能生成
Java的相关知识
作者其他创作
大纲/内容
MySQL
建库建表
创建数据库
使用create database 数据库名
删除数据库
使用drop database数据库名
使用drop database if exists数据库名
使用数据库
use数据库名
创建数据表
定义表结构
字段名/列名
数据类型
约束
常见的数据类型
数值类型
整数类型
int
bigint
smallint
tinyint
浮点数类型
float
double
decimal
日期与时间类型
date
datetime
字符串类型
char
varchar
常见的约束
主键约束
primary key 值不能为空,唯一,一个表只有一个
外键约束
foreign key 引用其他表的字段,实现引用完整性
非空约束
not null 必填
唯一性约束
unique不能重复
自增
auto_increment只能整数,自动增长
删除表
使用DROP TABLE语句
确认删除操作
修改表结构
添加列
使用ALTER TABLE ADD COLUMN
删除列
使用ALTER TABLE DROP COLUMN
修改列数据类型
使用ALTER TABLE MODIFY COLUMN
查看表结构
desc 数据表名
增删改操作
插入语句
INSERT INTO基本用法
单条记录插入
多条记录插入
使用VALUES子句批量插入
删除语句
DELETE FROM基本用法
根据条件删除记录
删除所有记录
使用TRUNCATE TABLE的替代方案
更新语句
UPDATE基本用法
根据条件更新记录
更新多个字段
使用SET子句同时更新多个列
用户授权
查看用户
查看用户表
use mysql
select user,host from user
创建用户
CREATE USER语句
create user '用户名'@'主机名' identified with mysql_native_password by '密码';
用户授权
GRANT语句
grant 权限,权限... on 数据库.表 to '用户'@'主机';
取消权限
REVOKE语句
revoke 权限 on 数据库.表 from '用户'@'主机'
刷新权限
FLUSH PRIVILEGES语句
应用权限更改
删除用户
drop user '用户名'@'主机名';
基本的查询
SELECT语句结构
选择列与表
指定列名与表名
使用通配符*
选择所有列
条件查询
WHERE子句的应用
排序与限制结果集
ORDER BY与LIMIT子句
函数与表达式
聚合函数
COUNT、SUM、AVG、MAX、MIN
字符串函数
CONCAT、SUBSTRING、LENGTH
日期与时间函数
NOW、CURDATE、DATEDIFF
数学函数
ROUND、CEIL、FLOOR
子查询
嵌套子查询
在SELECT、FROM、WHERE子句中使用
相关子查询
涉及外部查询变量的子查询
标量子查询
返回单一值的子查询
模糊查询
LIKE操作符
基本用法与通配符
%匹配任意数量字符
_匹配单个字符
转义字符的使用
处理特殊字符匹配
正则表达式查询
REGEXP操作符
基本正则表达式语法
匹配模式示例
匹配数字、字母与特殊字符
查询排序
ORDER BY子句
升序排序asc
降序排序desc
分页查询
LIMIT提高查询速度,方便用户查看
select * from student limit 开始行数,长度;
分组查询
GROUP BY子句
按一个或多个列分组
统计每组内的记录数
聚合函数的应用
SUM、AVG、COUNT等函数在分组查询中的使用
HAVING子句
过滤分组结果
基于聚合函数的结果进行过滤
分组排序与限制
在分组查询中使用ORDER BY
对每组内的记录进行排序
LIMIT与分组查询的结合
限制每组返回的记录数
外键约束
定义外键
CREATE TABLE时定义
指定参照表与列
ALTER TABLE时添加
修改现有表以添加外键
外键的特点
添加数据,先主后从;删除数据,先从后主。(先存在就是主,后存在的就是从)
删除外键约束
alter table 表 drop foreign key 约束名;
表之间关系
一对一关系
实现方式
主键与唯一外键的结合
一对多关系
实现方式
使用外键建立主从表关系
多对多关系
实现方式
通过中间表建立关联
中间表的设计
包含两个外键的中间表结构
连接查询
INNER JOIN内连接
基本用法
返回两个表中匹配的记录
多表连接
涉及三个或更多表的连接查询
LEFT JOIN左连接
返回左表中的所有记录及右表中的匹配记录
处理右表中无匹配的情况
RIGHT JOIN右连接
返回右表中的所有记录及左表中的匹配记录
处理左表中无匹配的情况
FULL JOIN全连接
返回两个表中所有记录,无匹配时以NULL填充
了解MySQL中FULL JOIN的替代方案
0 条评论
下一页