博客
关于我
mysql加强(5)~DML 增删改操作和 DQL 查询操作
阅读量:789 次
发布时间:2023-02-12

本文共 1566 字,大约阅读时间需要 5 分钟。

DML 和 DQL 操作指南

一、DML 增删改

1. 插入语句

插入操作是向数据库表中添加新记录的常用操作。以下是常用的插入方式:

  • 单条记录插入:
insert into 表名(列名1, 列名2, ...)values (值1, 值2, ...);
  • MySQL 批量插入:
insert into 表名(列名) values ('小红', '员工', 1234, 1200),                               ('小黄', '员工', 1234, 1200),                               ('小蓝', '员工', 1234, 1200),                               ('小绿', '员工', 1234, 1200);
  • 查询结果批量插入(省略values):
insert into 表名(列名1, 列名2)select 列名1, 列名2 from 表名;

注意事项:

  • 插入数据时可能会受到 max_allowed_packet 参数限制,建议根据实际需求调整配置文件。
  • MySQL默认会限制大数据的写入和更新,建议检查 max_allowed_packet 参数设置。

2. 删除语句

删除操作用于从数据库表中移除记录。以下是常用的删除方式:

  • 删除单条记录:
delete from 表名 where 条件;
  • 批量删除(使用 IN 子句):
delete from 表名 where 列名 in (值1, 值2, ...);

示例:

delete from emp where empno >= 8000;

3. 修改语句

修改操作用于更新表中已有记录的字段值。以下是常用的修改方式:

  • 更新多个字段:
update 表名 set 字段1=新值1, 字段2=新值2 where 条件;

示例:

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

二、DQL 查询操作

1. 查询语法

DQL 查询语句用于从数据库表中检索数据。基本语法格式如下:

select [字段1, 字段2, ...] from 表名[where 查询条件][order by 排序字段 asc|desc [, 排序字段2 asc|desc, ...]];

2. 常用查询技巧

  • 比较运算符
    • 等于:=
    • 不等于:!=<>
    • 大于:>>=
    • 小于:<<=
  • 范围查询
    • between ... and 用于查询两个端点之间的值
    • not between ... and 用于排除范围外的值
  • 逻辑查询
    • not 优先级高于 andor
  • 集合查询
    • in 用于查询匹配指定集合的值
    • not in 用于排除不在集合中的值
  • 模糊查询
    • 使用 like 和通配符(%_)匹配字符串模式
  • 空值查询
    • is null 检查是否为空
    • is not null 检查是否不为空

3. 其他常用查询

  • 列出所有员工信息并按部门排序:
select depname, ename, salary from emp order by depname asc, salary desc;
  • 查询2023年以后入职的员工:
select ename, entrydate from emp where entrydate >= '2023-01-01';
  • 查询名单中没有的员工姓名:
select ename from emp where ename not in (select ename from emp where salary > 10000);

以上内容为DML和DQL的详细操作指南,涵盖了增删改查的基本语法和常用查询技巧。

转载地址:http://dmbfk.baihongyu.com/

你可能感兴趣的文章
MyEclipse用(JDBC)连接SQL出现的问题~
查看>>
myeclipse的新建severlet不见解决方法
查看>>
MyEclipse设置当前行背景颜色、选中单词前景色、背景色
查看>>
MyEclipse配置SVN
查看>>
MTCNN 人脸检测
查看>>
MyEcplise中SpringBoot怎样定制启动banner?
查看>>
MyPython
查看>>
MTD技术介绍
查看>>
mysql
查看>>
MTK Android 如何获取系统权限
查看>>
MySQL - 4种基本索引、聚簇索引和非聚索引、索引失效情况、SQL 优化
查看>>
MySQL - ERROR 1406
查看>>
mysql - 视图
查看>>
MySQL - 解读MySQL事务与锁机制
查看>>
mysql 1264_关于mysql 出现 1264 Out of range value for column 错误的解决办法
查看>>
mysql 1593_Linux高可用(HA)之MySQL主从复制中出现1593错误码的低级错误
查看>>
mysql ansi nulls_SET ANSI_NULLS ON SET QUOTED_IDENTIFIER ON 什么意思
查看>>
MySQL Binlog 日志监听与 Spring 集成实战
查看>>
Mysql Can't connect to MySQL server
查看>>
mysql case when 乱码_Mysql CASE WHEN 用法
查看>>