mysql加强(5)~DML 增删改操作和 DQL 查询操作

2022/1/29 2:05:42

本文主要是介绍mysql加强(5)~DML 增删改操作和 DQL 查询操作,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!


作者:一乐乐
欢迎大家来一乐乐的博客园

一、DML 增删改

1、增(插入)语句:

  • insert into 表名(列名1,列名2,列名3…)values (值1,值2,值3 …);

  • mysql 特有的,允许批量插入

    insert into emp (ename, job, mgr, sal) values ('小红', 'worker', 1234, 1200),('小黄', 'worker', 1234, 1200),('小蓝', 'worker', 1234, 1200),('小绿', 'worker', 1234, 1200);
    
  • 插入查询的结果【得到多条数据,测试性能】---语法中values 要省略不写

    # 将从表emp查询出来的ename,job 插入表emp 【查询后插入语法中是没有values】
    insert into emp (ename, job) select ename, job from  emp;
    
    • 一条sql得到长度是有限的,可以调整max_allowed_packet参数;
    • MySQL根据配置文件会限制Server接受的数据包大小。有时候大的插入和更新会受 max_allowed_packet 参数限制,导致大数据写入或者更新失败。

2、删除语句:

  • delete from 表名 where 条件(s)

    delete from emp where  empno >= 8000;
    
  • 搭配 in 批量删除:

    delete from emp where empno in (8039, 8040, 8041, 8042, 8043, 8044, 8045, 8046, 8047);
    

3、修改语句:

  • update 表名 set 字段1=新值1[,字段2=新值2] where 条件(s)

    update emp set ename = 'King' where empno = 8049;
    



二、DQL 查询操作

1、语句:

select [字段1[,字段2....]]

from 表名

where 查询过滤条件

[order by 排序字段1 asc|desc [,排序字段2[asc|desc],...]]


2、常用的查询(比较、范围between...and、逻辑not and or、集合in、模糊like查询):

  • 比较运算符 = != <> > < >= <=
  • 范围查询 between ... and (包含开头和结尾) not between ... and
  • 逻辑查询 not and or (注意优先级:not > and > or
  • 集合查询 in 列出匹配的值,在元素集合内【in 还常用来批量删除】 not in
  • 模糊查询 like 匹配字符串模式,必须搭配通配符号一起使用【%:任意字符, _:占一个字符位置】
  • 空值查询 is null 是否为空 is not null

● 文章来源于:一乐乐的博客园

● 转载请注明出处



这篇关于mysql加强(5)~DML 增删改操作和 DQL 查询操作的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!


扫一扫关注最新编程教程