数据库(MySQL)
2022-04-13 21:03:02 0 举报
AI智能生成
详细包含了DDL DML DQL DCL 的具体用法
作者其他创作
大纲/内容
介绍
DBMS
Database Management System
数据库管理系统
DB
Database
数据库
Data
数据
DBA
Database Analysis
数据库分析工程师
专业术语
库名不能重复
不能使用数据库的关键词命名
库名大小写不分
create database 库名
create database if not exists 库名;
create
alter database 库名 character set=‘gbk’
Alter
drop database 库名
drop database if exists 库名;
Drop
show databases
单个字符
_
任意字符
%
通配符号
show databases like
show create database 库名;
Show
use 库名
选择数据库
use
Create
表的详细信息
show create table 表名
表所有字段的信息,权限信息
show full columns from 表名
查看表结构
desc 表名
show columns from 表名
alter table 表名 rename as 新表名
修改表名
change
修改
first
第一位
after 列名
中间位
默认
最后位
add
添加列
drop
删除列
修改列名
Alter table 表名 add primary key(列名);
创建组合主键
主键
Alter table 表名 add unique(列名);
唯一键
Alter table 从表名 add foreign key(从表列名) references 主表(主表列名);
外键
添加
Alter table 表名 change 旧字段名 新字段名 数据类型 约束条件
修改字段名
alter table 表名 modify 字段名 数据类型 约束条件
default
默认值
auto_increment
自增
not null
非空
修改数据类型
modify
primary key(id)
一张表只有一个primary key
Alter table 表名 drop primary key;
(show create table 表名)
Alter table 从表名 drop foreign key grade_ibfk_1;
Alter table 表名 drop index 索引;
删除
约束条件
drop table 表名
drop table if exists 表名
int(10)
int(11)
int
decimal(10,2)
decimal
float
double
数值型
char
varchar
字符型
date
日期型
enum
枚举型
数据类型
唯一,非空
primary key
Not null
主表
foreign key ....references
从表
foreign Key
唯一,可以为空
unique
整型
自增长
'字符串'
数字
comment
说明
表结构
DDL
insert into 表名(列名1,列名2) values(值1,值2),(值1,值2)
insert into 表名 values(值1,值2),(值1,值2)
source sql文档的绝对路径
source .sql
批量导入数据
create table 表名 like 库名.表名
复制表结构
insert into 表名 select * from 库名.表名
插入数据
复制表
insert
and
or
逻辑条件
比较条件
update 表名 set 列名=值 /表达式【where 条件】
update
delete from 表名 【where条件】
delete
select
DML
select 列名
单个列
select 列名1,列名2
多个列
select *
所有列
as 省略
as 别名
列名的别名
去除重复的
distinct
单个表
select * from 表1,表2,表3
交叉连接
select * from 表1,表2 where 条件
隐式连接
select * from 表1 inner join 表2 on 条件 inner join 表3 on 条件
inner可以省略
显式连接
内连接
表1left join 表2 on 条件 join 表3 on条件
left join ....on
左连接
right join....on
右连接
外连接
select 列名1,列名2 from 表1 union select 列名1,列名2 from 表2
union
联合查询
select语句
具体数据
in
not in
where
from
having
子查询
多个表
临时表
表名
and
between....and...
<> ' '
=' '
有数据
空值
is null
is not null
null
无数据
空
判空条件
like
模糊查询
可以省略
asc
升序
desc
降序
order by
count(),avg(),sum()
group by
limit 起始行,行数
起始行为0可以省略
limit
计数
count()
平均值
avg()
求和
sum()
最大值
max()
最小值
min()
聚集函数
拼接字符串
concat(列名1,列名2,‘字符串’,列名3)
更新字符串
insert('字符串',起始位,长度,‘新字符串’)
insert( )
截取字符串
拼接字符串以标识符隔开
替换字符串
replace(字符串,被替换的子字符串,用于替换的字符串)
重复显示字符串
repeat(字符串,重复的次数)
字符串函数
年月日
date()
时间
time()
年
year()
curdate()
年月日时间
now()
日期函数
case when ...then.. when... then...else ...end
case.......end
表达式1 为True,显示表达式2
表达式1为False,显示表达式3
if(表达式1,表达式2,表达式3)
表达式1不为null,显示表达式1
表达式1为null,显示表达式2
ifnull(表达式1,表达式2)
表达式1=表达式2,显示null
表达式1!=表达式2,显示表达式1
nullif(表达式1,表达式2)
流程控制函数
in()
not in()
version()
database()
user()
其他函数
内置函数
函数
筛选的是from后面的表
筛选是select后面的字段的数据
筛选
数据查询
DQL
create user ‘用户名’@‘允许登录的地址’ identified by‘密码’
grant
revoke
权限
DCL
结构化查询语言
Structured Query Language
SQL
Mysql
收藏
0 条评论
回复 删除
下一页