当前位置: 首页 > news >正文

【MySQL 数据库】增删查改操作CRUD(上)

 🔥博客主页🔥:【 坊钰_CSDN博客 】

欢迎各位点赞👍评论✍收藏⭐

目录

1. CRUD 简介

2. Create -- 新增

2.1 语法

 2.2 练习

3. Retrieve -- 检索

3.1 Select -- 查询

3.1.1 全列查询

3.1.2 指定列查询

3.1.3 表达式查询

3.1.4 为结果命名

 3.1.5 为结果去重

3.1.6 Select 注意事项

3.2 Where -- 条件查询

3.2.1 语法

3.2.2 示例

3.2.2.1 限制条件查询

3.2.2.2 范围查询

3.2.2.3 模糊查询

3.2.2.4 NULL-- 查询

3.3 Order by -- 排序

3.3.1 语法

 3.3.2 排列示例

3.4 分页查询

3.4.1 语法

3.4.2 分页示例

3.5 Update -- 修改

3.5.1 语法

3.5.2 修改示例

3.6 Delete -- 删除

4. 小结


1. CRUD 简介

在数据库中的操作,增删查改是最基本的操作,简称 CRUD

Create -- 新增

Retrieve -- 读取

Update -- 更新

Delete -- 删除

2. Create -- 新增

那么在一张表中,如何插入数据呢?

2.1 语法

insert into table——name 列名 value 数据值
  • 这是较简略的写法,后续还有各种语法组装在一起,后续讲解

 2.2 练习

创建一张考试成绩表,如下:

-- 使用库
use store;

-- 创建一张成绩表
create table if not exists exam(
  id bigint comment '序号',
  name varchar(20) comment '学生姓名',
  chinese float comment '语文成绩',
  math float comment '数学成绩',
  english float comment '英语成绩'
);

-- 插入数据
insert into exam (id,name,chinese,math,english) value 
  (1,'唐三藏', 67, 80, 92),
  (2,'孙悟空', 87, 78, 77),
  (3,'猪悟能', 88, 98, 90),
  (4,'沙和尚', 85, 78, 80),
  (5,'曹孟德', 82, 84, 67),
  (6,'刘玄德', 55, 85, 45),
  (7,'孙权',   70, 73, 78);

先看表的内容: (具体语句在代码中,不作过多讲解)

3. Retrieve -- 检索

那我们如何查看表中的数据呢?

3.1 Select -- 查询

-- 语法
mysql> select 列名 from 表名;

3.1.1 全列查询

  • 使用 * 可进行全列查询
mysql> select * from exam;

3.1.2 指定列查询

  • 使用要查的列名去查询,例:查询同学的数学,英语成绩
mysql> select id,name,math,english from exam;

3.1.3 表达式查询

  • 例:把所有同学的英语成绩加10分
mysql> select id,name,english + 10 from exam;

  • 例:查询所有同学的总分 
mysql> select id,name,chinese+math+english from exam;

3.1.4 为结果命名

  •  为总分命名,以上述为例
mysql> select id,name,chinese+math+english 总分 from exam;

     3.1.5 为结果去重

    • 去除重复的数学成绩

    mysql> select distinct math from exam;

    3.1.6 Select 注意事项

    • select 查询时,如果不加限制条件,会查询服务器中所有数据,导致服务器资源的浪费
    • 生产环境中最好不要写出不带限制条件的查询语句 

    3.2 Where -- 条件查询

    有限制条件的查询如何写呢?

    3.2.1 语法

    mysql> select 列名 from exam where 条件;

    3.2.2 示例

    3.2.2.1 限制条件查询
    • 查询英语成绩不及格的同学
    mysql> select id,name,english from exam where english < 60;

    • 总分在200分以下的同学 
    mysql> select id,name,chinese + math + english 总分 from exam where chinese + math + english < 200;

    3.2.2.2 范围查询
    • 查询语文成绩在【80,90】的同学
    mysql> select id,name,chinese from exam where chinese between 80 and 90;

    • 查询数学成绩为 78 或 79 或 98  的同学 
    mysql> select id,name,math from exam where math in (78, 79, 98);

    3.2.2.3 模糊查询
    • 查询所有姓孙的同学 
    mysql> select * from exam where name like '孙%';

    • 查询所有姓孙且名字只有2个字的同学 
    mysql> select * from exam where name like '孙_';

    3.2.2.4 NULL-- 查询

    写入一个数学成绩为 null 的同学

    -- 插入数学成绩为null
    insert into exam (id,name,chinese,math,english) value (1, '赵云', 78, null, 88);

    • 查询数学成绩不为空的同学  
    mysql> select id,name,math from exam where math is not null;

    • NULL 与任何值进行计算都为 NULL 
    mysql> select id,name,chinese+math+english '总分' from exam;

    3.3 Order by -- 排序

    在数据库中如何排序呢?

    3.3.1 语法

    -- 升序(从小到大)
    ASC
    
    -- 降序(从大到小)
    DESC
    
    -- 默认为 ASC
    
    mysql> select 列名 from exam where 条件 order by 排序;

     3.3.2 排列示例

    • 按数学成绩降序查询
    mysql> select name,math from exam order by math desc;

    • 总分降序查询 
    mysql> select name,chinese + math + english 总分 from exam order by 总分 desc;

    3.4 分页查询

    如果数据库中数据较多,那么我们就要进行分页查询

    3.4.1 语法

    -- 从 0 开始,筛选 num 条结果
    mysql> select 列名 from exam where 条件 order by 排序 limit num;
    
    -- 从 start 开始,筛选 num 条结果
    mysql> select 列名 from exam where 条件 order by 排序 limit start,num;
    
    -- 从 start 开始,筛选 num 条结果
    mysql> select 列名 from exam where 条件 order by 排序 limit num offset start;

    3.4.2 分页示例

    • 按一页有3行数据来查 
    mysql> select * from exam limit 0,3;

    3.5 Update -- 修改

    数据库中数据信息如果错误,如何修改呢?

    3.5.1 语法

    update table_name set [up_options];
    

    3.5.2 修改示例

    • 将唐三藏数学成绩改为90分
    mysql> update exam set math = 90 where name = '唐三藏';

    • 将所有同学数学都乘以2 
    mysql> update exam set math = math * 2;

    3.6 Delete -- 删除

    删除是一种非常危险的操作,不建议操作

    • 删除赵云的数据 
    mysql> delete from exam where name = '赵云';

    4. 小结

    以上就是对MySQL增删查改的了解,具体还需宝子们去实践,如果觉得该博客对你有用的话,希望一键三连,点个关注不迷路,谢谢支持 

    相关文章:

  • Elasticsearch 系列专题 - 第一篇:Elasticsearch 入门
  • Ansible的使用3
  • 大数据技术之SPARK
  • 潮玩宇宙大逃杀游戏源码搭建部署二开,可切换单多杀boss模式
  • 怎么构造思维链数据?思维链提示工程的五大原则
  • 区块链是怎么存储块怎么找到前一个块
  • 如何向ESL阿联酋航运发送EDI CODECO报文?
  • DeepSeek 助力 Vue3 开发:打造丝滑的日历(Calendar)
  • 基于STM32、HAL库的IP6525S快充协议芯片简介及驱动程序设计
  • java基础语法(3)数组
  • CTF web入门之信息收集
  • Maven和MyBatis学习总结
  • Windows10系统更改盘符
  • 【力扣hot100题】(080)爬楼梯
  • 【JavaScript】异步编程
  • 图解AUTOSAR_SWS_FunctionInhibitionManager
  • 重新定义PPT创作!ChatPPT发布全球首个AI PPT专用MCP Server
  • 函数作为返回值输出
  • OSI七层模型的封装及解包分用的过程
  • 智能客服系统中的意图识别与分类技术详解
  • 辽宁省网站建设/seo网络推广是干嘛的
  • 360doc 网站怎么做/精准客户资源购买
  • wordpress定时函数/优化最狠的手机优化软件
  • 怎么做视频解析网站/长沙百度推广优化排名
  • 网站建设的步骤过程/现代网络营销的方式
  • 武汉市城市建设委员会网站/太原网站推广公司