当前位置:网站首页 > SQL数据库编程 > 正文

数据库增删改查关键字(sql增删改查关键字)



目录

一、插入

(1)一次插入一条记录

(2)指定列插入记录

​(3)插入多条记录

二、查询

(1)全列查找

(2)指定列查询

(3)查询字段为表达式

(4)去重查询

(5)排序查询

(6)条件查询

(7)分页查询  

三、修改

(1)一次修改一列

​(2)一次修改多列

四、删除

给大家一些数据方便大家练习😘,直接复制粘贴到控制台就行 


        在SQL语句中,插入数据使用的关键字是insert

 

   (1)一次插入一条记录

   (2)指定列插入记录

指定列查询,需要在表名后面加上 列名

 

   (3)插入多条记录

insert插入语句还可以一次插入多行,每条记录用逗号隔开

 

 一次插多条记录比一次插一条记录,分多次插入效率更高!!!

往数据库中插入记录也不是单纯的就往硬盘里一写就完事了,也是要做一些额外的工作的,一次插入多条记录只做一次额外工作,而插入多次记录要做多次额外的工作。 

        SQL 中是使用select 关键字,表示查询

 (1)全列查找

 

* 称为通配符,表示所有的列

 上述全列查询,其实是一个危险操作!!!

select * 操作,会让服务器大规模的读取磁盘上的数据,在把数据通过网卡写会到客户端

如果当前存储的数据量级非常大,就会导致读磁盘和写网卡的时间非常长,甚至于把 磁盘带宽 和 网卡 都吃满!!

  (2)指定列查询

 

这里要求和表中的列名匹配,可以同时写多个列名,中间使用,分割。

相比于上述 select * 来说,指定列查询传输数据量少了不少!!!

 思考:这里的查询只能看见两列,是否以为着其他的列就被删除了呢?

📍 在查询过程中,客户端这里显示的内容只是一个 临时表 ! 临时表是根据服务器的数据生成的!!! 所有查询操作,都不会影响服务器磁盘上是数据。

  (3)查询字段为表达式

 一遍查,一遍计算       

1.对列进行计算

这里只是影响到临时表的数据展示!!对于数据库服务的原有数据没有温和影响!!!  

 2.列和列之间进行计算

如果我们想要求 学生成绩 综合,我们就可以把所有列加到一起。

注意:

1、我们不能拿字符串跟数字相加,不然会报警告

拓展:我们可以通过 show warinings; 来查看警告信息!

 2、查询结果,是“临时表”的数据类型,其不一定和原始的标一模一样,会尽量保证数据的正确有效性。

3.给查询结果的列起别名 

在上述表达式查询过程中,临时表的列名,也就是表达式的内容,有时候比较长可读性不高,因此 SQL 允许在进行查询的时候,给临时表的列 指定 别名!

 

 as 可以省略,但是 代码可读性不高,容易把 total 误以为是 表达式中的一部分。

  (4)去重查询

        distinct 关键字,修饰某个列,针对这列的数据进行去重!!会把重复的记录,合并成一个!! 

 去重操作,也可以针对多个列进行。

多列去重条件:当多多个列都是相同的时候,才会去重!!

  (5)排序查询

        排序查询结果,使用 order by 关键字(默认为升序)!!

 

 🔻如果想要进行降序排序,在最后加上一个 desc 来表示~~

 这里大家不要跟 desc 描述表结构关键字弄混

desc  tables;// 描述表的结构   describe

select * from exam_result order by Chinese desc; // 排序降序  descend

🔺与 desc 对应的就是 asc 升序,但是order by 默认就是升序,所以asc 加上没啥意义。

order by 既然能根据一个列排序,那必然也能根据多个列进行排序。

 

多列排序规则:先根据 列1 进行排序,如果 列1 有数据重复,则根据 列2 排序,一次类推。

例如:对 数学 和 语文 进行排序,先根据 数学成绩 排序,遇到相同的数学成绩,在根据 语文成绩 进行排序。 

 💨而上述是升序排列,而对多列进行降序排列,那我们加多个 desc

   (6)条件查询

        查询的时候指定筛选条件~ 用 where 关键字 来表示条件!、

 

条件相当于是针对表,进行遍历~

依次取出每一条记录,带入条件,进行计算,看条件是 true 还是 false

条件成立,就把记录留下来放到结果中!

 在SQL中提供一些条件运算符,分为两类:比较运算符和逻辑运算符

🌒比较运算符:

运算符说明>, >=, <, <=大于,大于等于,小于,小于等于=等于,NULL 不安全,例如 NULL = NULL 的结果是 NULL<=>等于,NULL 安全,例如 NULL <=> NULL 的结果是 TRUE(1)!=, <>不等于BETWEEN a0 AND
a1范围匹配,[a0, a1],如果 a0 <= value <= a1,返回 TRUE(1)IN (option, ...)如果是 option 中的任意一个,返回 TRUE(1)IS NULL是 NULLIS NOT NULL不是 NULLLIKE模糊匹配。% 表示任意多个(包括 0 个)任意字符;_ 表示任意一个字

🌘逻辑运算符:

运算符说明AND多个条件必须都为 TRUE(1),结果才是 TRUE(1)OR任意一个条件为 TRUE(1), 结果为 TRUE(1)NOT条件为 TRUE(1),结果为 FALSE(0)

下面根据不同的条件进行举例讲解 

  • 基本查询(大于、小于、不等于)

  🧡 ' < ' : 查询英语成绩 不及格的同学

  💛' > ' : 查询语文成绩好于英语成绩的同学,总分大于 200 的学生

 

这里要注意一点,where 中条件不能写 我们重新命名的列,不然会报错

 在条件查询的SQL中,先执行 where,符合条件的记录,在执行 select 前半部分决定显示哪些列,以及进行啥样的运算。

因此 total 就是在条件判定后才定义的! 而 order by可以使用别名排序

  💚' = ' ' <=> ' : 查询语文成绩等于数学成绩的人

注意:‘ = ’ 只能比较非空值,如果比较 null 和 null 那结果就为 null

例如:我向表中插入  insert into exam_result values('9','公孙燕',null,null,null); 这行代码

再用 ‘=’ 进行查询

大家不难发现,没有公孙燕这一行

但是我用 ‘<=>’ 进行比较时,这一行就会出现

 这个两个运算符的特点,希望大家能够记住

  • and 与 or

  💙' and ' : 查询语文成绩大于80分,且英语成绩大于80分的同学

  🤎' or ' : 查询语文成绩大于80分,或英语成绩大于80分的同学

❗注意:在SQL中 and 的优先级 比 or 更高,当一个条件里同时有 and 和 or 的时候,先算 and。

  •  范围查询

  💕' between...and... ' : 查询语文成绩在 [80, 90] 分的同学及语文成绩

  💗' in ' : 查询数学成绩是 58 或者 59 或者 98 或者 99 分的同学及数学成绩
 

  🤍 ' like'  模糊查询

        like 模糊查询,依赖一些 通配符 来表示要匹配的值是啥样的~

 

通配符主要分为两种

%匹配任意多个(包括0个)字符_匹配严格的一个任意字符

 例如:查找姓 ‘孙’ 的人(匹配以 ‘孙’ 开头的)

‘%孙’ 匹配以 ‘孙’ 结尾的

‘%孙%’ 匹配内容包含‘ 孙’

 查询以  ‘孙’ 开头,名字字数为 2 的人

  查询以  ‘孙’ 开头,名字字数为 2 的人那就是 '孙__'。

  💟null 的查询

        查询 null 我们可以用 is null, 查询非 null 可以用 is not null

例如:查询语文成绩为空的人

 查询数学成绩非空的人

 注意:查询 null 值时不能用 = 而要用 <=>,用 = 的话 会判断为假。

例如 a = b: 等号会先判断 a 和 b 是否为null,为空表达式直接为假。若不为空,则判断 a 是否等于 b,等于为真,否为假。

  (7)分页查询  

    分页查询 用 limit 关键字

 

例:查询前三条记录

 从第三条开始,查询三条记录

 上述查询方式是可以结合在一起使用的~~

例:找出总成绩三名,且姓名不为 猪悟能

 
 

 这里 我们需要注意一点,一般 where 是紧跟 from 后面, order by 在where 后,limit 在最后

 

        在SQL中,想要修改记录需要使用 update 关键字

 

 (1)一次修改一列

 (2)一次修改多列

例:将总分倒数前三的同学,数学成绩加上 10

首先我们查看一下倒数前三名成绩【把三列合并成一列,排序,查看前三个记录】

 然后根据条件进行修改 

matched: 3   有三条记录匹配

Changed: 2   有两条记录被改变

 注意:null 和其他值进行算术运算,结果还是 null !!

 修改成功

        在 SQL 删除记录,需要使用 delete 

 

where 后面的条件,选择几个记录,就会删除几个记录!!! 

例:删除 公孙燕 这条记录

给大家一些数据方便大家练习😘,直接复制粘贴到控制台就行 

 
到此这篇数据库增删改查关键字(sql增删改查关键字)的文章就介绍到这了,更多相关内容请继续浏览下面的相关推荐文章,希望大家都能在编程的领域有一番成就!

版权声明


相关文章:

  • pymysql连接数据库失败(pymysql 连接数据库)2025-03-21 15:00:08
  • .sql文件有什么用(数据库.sql文件)2025-03-21 15:00:08
  • sql语句中foreach循环(sql中的foreach用法)2025-03-21 15:00:08
  • .sql文件有什么用(.sql文件的作用)2025-03-21 15:00:08
  • goldendb数据库 mysql(goldendb数据库下载)2025-03-21 15:00:08
  • mysql主键用uuid(mysql主键用什么类型)2025-03-21 15:00:08
  • oracal和mysql的区别(oracle和mysql区别大吗)2025-03-21 15:00:08
  • sql文件如何打开运行(sql文件怎么打开、运行)2025-03-21 15:00:08
  • 为什么用redis不用mysql(为什么要用redis不用mysql)2025-03-21 15:00:08
  • sql中循环更新对应主键的时间(sql中循环更新对应主键的时间怎么算)2025-03-21 15:00:08
  • 全屏图片