mysql执行计划 dml_Mysql学习->DML和DDL语句

DDL语句:数据库定义语言,一般是对数据库的操作,create,drop,alter等

DML语句:数据操作语言,curd操作

DDL:

create databases 数据库名     //创建一个数据库

show databases 数据库名    //查看数据库

use databases 数据库名    //使用数据库

drop databases 数据库名     //删除数据库   删除数据库后数据库中的库和表全部会被清空

#创建数据库

create table 数据库名(

column_name(字段名)  column_type(数据类型) constraints(约束条件,一般为空非空默认等)

)

desc 数据表名   查看数据表的信息

show create table 数据库表名 \G   查看数据表信息(全面) \G是代表竖向排列

drop table 数据表名     删除数据表

#一般对已经创建好的表,需要做结构上的变动就需要alter table 语句

alter table 数据表名 modify  column_name(字段名)   column_type(数据类型)     //修改表字段,只能修改其字段类型

alter table 数据表名 add  column_name(字段名)   column_type(数据类型)    //新增数据表字段

alter table 数据表名 drop column column_name(字段名)             //删除数据字段

alter table 数据表名  change column_name(列名) column_type(数据类型)        //修改字段名,可以修改字段名和字段类型,比modify多一个功能

alter table 数据表名 rename 表名                     //修改数据表名

其中有first | after ,这个两个关键字是字段排序、

DML语句:

insert into 表名 values(value1,value2,...) 新增数据,values后面的顺序要和字段的的排序一致,有默认值的字段,自增的字段可以不用写在values后面

insert into 表名 (字段1,字段2) values (value1,value2)

第二种方式可以大大提升插入数据库的效率

update 表名 set 字段 = value [wehere 条件]修改数据,也可以多表一同更新

delete from 表名 [where 条件]删除数据,也可以删除多表或关联的表

删除表或更新的时候需要加更新条件,不然很容易修改整个表或删除整个表

select * from 表名 查询数据

select distinct 字段 from 表名查询这个表这个字段不重复的数据

select * from 表名 where[条件]条件查询

select * from 表名 order by 字段 desc|asc排序查询,关键字是order by 其中desc是倒序排,asc是正序排

select * from 表名 limit[条数]limit起始偏移量

#聚合

count 记录数

sum 求和

max 最大值

min 最小值

一般都是和GROUP BY 分组一起使用

HAVING 对分组后的结果在进行条件的过滤

where和having的区别在于,haveing是对聚合后的结果进行条件的过滤,而where是聚合前进行了过滤,一般先用where进行过滤,在进行having过滤

#表连接[内连接,外连接]

内连接:仅选出两张表中相互匹配的记录

外连接:选出其他不匹配的记录

内连接: select * from 表1,表2, where 表1.字段名1 = 表2.字段名2

外连接:

左连接:包含左表中的记录和右表中没有和他匹配的记录select * from 表1 left join 表2 on 表1.字段1 = 表2.字段2 left join

右连接:包含右表中的记录和左表中没有和他匹配的记录select * from 表1 right join 表2 on 表1.字段1 = 表2.字段2right join

#记录联合UNION 和 UNION ALL的区别

UNION ALL 是将结果集直接合并在一起

UNION 是将合并后的结果在一次进行distinct(去重)操作

还有一个DCL一句是对数据库权限的操作一般为grant 和 revoke

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值