带你学透SQL语言的核心——DML操作

news2024/12/20 9:47:23

0️⃣写在前面

DML(Data Manipulation Language)是SQL语言的核心部分,其主要用于对数据库的数据进行增删改查。在学习数据时,学习DML操作是必不可少的一部分。

在这里插入图片描述

文章目录

  • 0️⃣写在前面
  • 1️⃣添加数据
  • 2️⃣修改数据
  • 3️⃣删除数据
  • 4️⃣查询数据
  • 5️⃣注意事项
  • 6️⃣总结


我们已经基本学会了写SQL来操作数据库,但在命令行中写SQL时,往往有体验感差,效率低等问题,今天开始我们就学习一下在MySQL的图形化客户端Navicat中执行SQL语句
在这里插入图片描述

Navicat 为数据库管理、开发和维护提供了一款直观而强大的图形界面,大大的提高了工作效率,建议在学习中也使用这款开发工具。接下来,在Navicat中新建查询,我们就可以编写SQL并且执行SQL语句了。

1️⃣添加数据

给指定列添加数据:

insert into 表名(列名1,列名2...) values(1,2...);

给全部列添加数据:

insert into 表名 values(1,2...);

批量添加数据:

insert into 表名(列名1,列名2...) values(1,2...),(1,2...)(1,2...)...;

批量添加数据(省略字段名):

insert into 表名 values(1,2...),(1,2...)(1,2...)...;

在开发过程中添加数据的时间是不建议省略字段名的,这样降低了代码的可读性,使效率下降。下面是添加数据的小案例:

查询表中的所有数据的方法是:

select * from 表名;

后面会用到的。

需求:往下面的tb_user表中添加一条数据。

在这里插入图片描述

insert into tb_user(id,name) values(2,'李四');

添加成功:

在这里插入图片描述


2️⃣修改数据

修改表的数据:

update 表名 set 列名1=1,列名2=2...[where 条件];

在修改数据时,也可以不使用where条件,此时的操作是修改整列数据,这样的操作是很危险的。

需求:把下面tb_user表中的张三的密码改为abc23

在这里插入图片描述

update tb_user set passwor d ='abc123' where name='张三';

修改成功:

在这里插入图片描述


3️⃣删除数据

删除表的数据:

delete from 表名 [where 条件];

在删除某条数据时,如果不使用where条件,将会导致删除整个表的数据。

需求:删除tb_user表中的李四记录。

delete from tb_user where name='李四';

操作成功:

在这里插入图片描述

4️⃣查询数据

下面给出一些SQL语言的DML查询数据的例子:

  1. 查询student表中所有数据
SELECT * FROM student;
  1. 查询student表中所有年龄大于等于18岁的学生数据
SELECT * FROM student WHERE age >= 18;
  1. 查询student表中男生(gender为’男’)的平均年龄
SELECT AVG(age) FROM student WHERE gender = '男';
  1. 查询student表中年龄最大的学生的信息
SELECT * FROM student WHERE age = (SELECT MAX(age) FROM student);
  1. 查询student表中,各性别(gender)的学生数量
SELECT gender, COUNT(*) FROM student GROUP BY gender;
  1. 查询student表中,年龄排名前三的学生的姓名和年龄
SELECT name, age FROM (
    SELECT name, age, RANK() OVER (ORDER BY age DESC) AS rank
    FROM student
) AS tbl WHERE rank <= 3;

上面这些例子涉及到了查询全部数据、条件查询、聚合函数、子查询、分组和排序等多种查询方式。在实际应用中,可根据需要选择不同的查询方式来获取所需的数据。

5️⃣注意事项

在学习DML操作时,需要注意以下几点:

  1. 注意SQL语句的语法和格式,不要犯错。

  2. 在进行数据修改操作时,一定要谨慎,尤其是DELETE语句,一定要确认数据删除的范围和内容。

  3. 在进行数据查询操作时,要明确查询的条件和要检索的列名,以避免不必要的查询负担。

  4. 在进行复杂查询操作时,要深入理解SQL语言的实现原理和查询优化技术,以提高数据操作效率和质量。

6️⃣总结

学习DML操作是学习数据操作的重要基础步骤,只有熟练掌握并灵活运用DML操作,才能更好地管理和利用数据。


在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/612343.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

chatgpt赋能python:Python教程:如何取出一个三位整数123的各个位并输出?

Python教程&#xff1a;如何取出一个三位整数123的各个位并输出&#xff1f; 如果您正在学习Python编程语言&#xff0c;那么您一定会遇到需要处理数字的情况。Python是一种非常方便的语言&#xff0c;可以帮助您轻松地提取一个三位整数的各个位数&#xff0c;并将其输出。在本…

Hopfield神经网络与受限波尔兹曼机

神经网络可分为两大类&#xff1a; 一类是多层神经网络、卷积神经网络&#xff1a;可用于模式识别另一类是相互连接型网络&#xff1a;可通过联想记忆去除输入数据中的噪声。 深度学习目录&#xff1a; 自适应线性单元 (Widrow and Hoff, 1960)神经认知机 (Fukushima, 1980)…

海睿思分享 | 企业如何加强采购风险控制

企业运营的主要流程&#xff0c;不会因为企业人员规模或者业务规模大小的差异&#xff0c;而出现巨大的差异。千万亿市值的上市公司、不足百人的新兴公司&#xff0c;面对的经营风险本质上不会有明显的区别。今天我们一起分享企业经营管理中常见的风险应对策略。 对于企业而言…

专业分析┃微电子专业介绍及发展前瞻

不知道提到微电子&#xff0c;你最先想到的是什么&#xff1f;芯片&#xff1f;卡脖子&#xff1f;摩尔定律&#xff1f; 因为近两年芯片被限制的原因&#xff0c;大家经常可以从各路媒体上看到“芯片”一词。微电子作为一个学科&#xff0c;简单的说&#xff0c;就是研究如何…

C++,Qt部分面试和笔试题

面试这么多次&#xff0c;C这块基础太差了&#xff0c;乘着还有印象总结下相关的面试问答和笔试题&#xff0c;后续会不断更新内容 目录 问答题1.计算机网络七层体系结构2.C中关键字static和const的使用3.QList和QVector for循环输出速度比较4.构造函数能否为虚函数5.谈谈你对面…

【Mysql】 表的增删查改

文章目录 【Mysql】表的增删查改Create --创建数据Retireve -- 读取数据select 列where条件order by -- 结果排序limit -- 分页 Update -- 更新数据Delete -- 删除数据deletetruncate -- 截断表 插入查询结果聚合函数group by 子句 【Mysql】表的增删查改 CRUD : Create(创建)…

成熟GPT小程序源码分享,快速搭建GPT小程序

本文中分享成熟的GPT小程序源码&#xff0c;帮助你快速搭建自己的GPT小程序。 GPT小程序源码介绍 GPT小程序源码是一套成熟的GPT编程框架&#xff0c;可以帮助你快速开发高质量的GPT小程序。该源码包含了丰富的功能模块和优秀的编程实践&#xff0c;可以帮助你轻松实现GPT小程…

【无标题】如何借助项目管理软件 降低人为误操作风险

在项目管理工具中&#xff0c;权限管理功能对于数据安全的重要性非常高&#xff0c;通常情况下&#xff0c;权限管理是指在软件系统中对用户或用户组进行授权和访问控制的过程。在项目管理软件中&#xff0c;权限管理涉及到谁可以访问、修改或删除项目数据的问题。 以下几方面…

一文学会MySQL四种安装方式

目录 &#x1f341;rpm方式安装 &#x1f340;下载软件包 &#x1f340;前置配置 &#x1f340;安装MySQL &#x1f341;yum方式安装 &#x1f340;下载软件包 &#x1f340;安装MySQL &#x1f341;二进制方式安装 &#x1f340;下载软件包 &#x1f340;安装MySQL &#x1f3…

pyhon的运算符和字符串格式化方式

pyhton的变量类型 这里可以值得一提的是&#xff0c;python是一种弱类型的语言&#xff0c;使用的感觉有些像C的auto变量类型&#xff0c;定义变量不需要写类型名字&#xff0c;只需要变量名就会自动匹配 # int a 10 # float b 10.333 # string c "nihao" # dic…

Linux Shell 实现一键部署mariadb10.11

mariadb MariaDB数据库管理系统是MySQL的一个分支&#xff0c;主要由开源社区在维护&#xff0c;采用GPL授权许可 MariaDB的目的是完全兼容MySQL&#xff0c;包括API和命令行&#xff0c;使之能轻松成为MySQL的代替品。在存储引擎方面&#xff0c;使用XtraDB来代替MySQL的Inno…

【数据结构与算法分析】反转链表与顺序表(内含源码,思路清晰)

文章目录 介绍实现顺序表反转实现链表反转附链表的一些中间函数 介绍 顺序表和链表都是数据结构中常见的线性表。它们的主要区别在于内存管理方式不同。   顺序表&#xff08;Array&#xff09;是由一系列元素按照一定顺序依次排列而成&#xff0c;它使用连续的内存空间存储数…

【数据结构】--单链表力扣面试题⑥链表的回文结构

题述&#xff1a;对于一个链表&#xff0c;请设计一个时间复杂度为o(n),额外空间复杂度为o(1)的算法&#xff0c;判断其是否为回文结构。给定一个链表的头指针A&#xff0c;请返回一个bool值&#xff0c;代表其是否为回文结构。保证链表长度<900 测试样例&#xff1a; 输入…

【统计分析】Bland-Altman图:MedCalc操作指南与Python实现

之前有记录过一致性分析中的天选之子ICC&#xff08;传送&#xff09;&#xff0c;也提到过Bland-Altman图&#xff0c;Bland-Altman图在一致性分析中作为一种既定量又定性的方法&#xff0c;还有着高颜值的表达展现&#xff0c;受到了广泛地应用。   如下图所示&#xff0c;…

Explaining predictive models: the Evidence Counterfactual

Imagine being targeted with an advertisement for this blog. You’d like to know: why did the AI model predict you’d be interested in the Faculty of Business and Economics’ blog, based on the hundreds of web pages you visited? The answer could be: becaus…

搭建ubuntu容器内C/C++开发调试环境

一、创建容器 为了让容器内的调试器&#xff08;gdb、lldb&#xff09;能够正常调试&#xff0c;在创建容器时需要添加参数&#xff1a; podman添加参数&#xff1a;--cap-addSYS_PTRACE&#xff0c;docker添加参数--cap-addSYS_PTRACE --security-opt seccompunconfined 否…

chatgpt赋能python:Python快捷键——另存为

Python快捷键——另存为 Python是一种高级编程语言&#xff0c;由Guido van Rossum于1991年创立。它的干净简洁&#xff0c;常规用途在计算机编程领域找到了广泛的应用。Python语言是一种普遍而有效的编程语言&#xff0c;有不少的Python程序员喜欢利用快捷键来提高编程效率。…

中医养生APP小程序开发 了解传统文化传承医学经典

中国文化博大精深&#xff0c;中国传统文化更是历史久远&#xff0c;一直到几千年后的今天很多传统文化依然对我们现在的生活有着重大的影响&#xff0c;比如中医。随着人们对健康关注度的提高&#xff0c;很多人把目光投向了追本溯源的中医上&#xff0c;企图通过中医养生达到…

搜索算法(四) 广度优先搜素算法

一、BFS bfs一层一层地遍历图或树&#xff0c;一般用队列实现&#xff0c;可以计算距离目标的步数。 二、例题 1&#xff09; 力扣https://leetcode.cn/problems/shortest-bridge/ 这道题实际是计算两个岛屿之间的最短距离&#xff0c;可以先用dfs搜索到第一个岛屿并且记录第…

TDEngine - taosdump的安装与使用实战

taosdump的安装与使用实战 一、taosdump简介二、下载三、安装四、taosdump主要参数五、taosdump数据导出&#xff08;备份&#xff09;六、taosdump数据导入七、不同版本的数据迁移7.1 问题&#xff1a;报错- create database 语句不一致7.2 解决&#xff1a;修改导出的dbs.sql…