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