MYSQL-DML

1.插入表数据

#插入完整数据字段:
insert into table 表名 value(值1,值2,值3,....),(值1,值2,值3,....),.....
insert into table 表名 values(值1,值2,值3,....),(值1,值2,值3,....),.....
#插入部分数据字段:
insert into table 表名(指定字段1,指定字段2,..) value(值1,值2,....),(值1,值2,....),.....
insert into table 表名(指定字段1,指定字段2,..) values(值1,值2,....),(值1,值2,....),.....
#注:此处插入的值需要与指定字段一一对应,未指定的字段需可为空

1.1 value 与 values 的区别

value与values均可用于对表插入一条或多条数据。

value  插入一条数据的执行速度要高于values插入一条数据;

values 插入多条数据时执行速度要高于value插入多条数据。

执行时间可用以下方式查看:

第一步:查看当前SQL版本是否支持查看执行时间:

select @@have_profiling;

第二步:开启profile

set profiling=1;

第三步:执行所需要查看执行时间的SQL语句

第四步:查看时间

show profiles;

可选步骤:查看每个线程的执行时间

show  profile for query 8(线程号);

2.删除表数据

#删除所有数据
delete from 表名;
#删除通过条件筛选出来的数据
delete from 表名 where 条件;

3.更新表数据

#更新表中某列的所有数据为值1
update 表名 set 字段=值1;
#跟据筛选条件(本质上是筛选行)更新表中某列的数据为值1
update 表名 set 字段=值1 where 条件;

巧妙的update用法:

场景:在性别只有'男'和'女'的表中,将性别为'男'的修改为'女',性别为'女'的修改为'男'

#方法一
update 表名 set sex = case when sex='男' then '女' else '男' end;
#方法二
update 表名 set sex = case sex when '男' then '女' else '男' end;

总结:

DDL:数据定义型语言

本质上是对表中列名的定义修改删除

建立库/表:create  database/table   库名/表名    [表字段定义];

修改表:alter table 表名 add/change/modify/drop;

删除表:drop/truncate  表名;

DML:数据操作型语言

本质上是对表中列/单元格数据的插入更新删除

插入数据:insert into table 表名 values(...);

更新数据:update 表名 set  字段(列名)=值;

删除数据:delete from 表名;

  • 10
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值