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

SQL之表的查改(下)

目录

 1. Where

1.1 >, >=, <, <=

1.2 =

1.3 <=>

1.3 !=, <>

1.5 BETWEEN a0 AND a1

1.6 IN (option, ...)

1.7 IS NULL

1.8 IS NOT NULL

1.9 LIKE

1.9.1 %

1.9.2 _

1.10 AND

1.11 OR

1.12 别名不能用在 WHERE 条件中

1.13 结果排序

1.13.1 多重排序

ORDER BY 子句中可以使用列别名。

1.14 联合使用

2. Update


 1. Where

语法:

​​SELECT 想要查询的列名 FROM 表名 where 条件;
运算符
说明
>, >=, <, <=
大于,大于等于,小于,小于等于
=
等于,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
NULL
IS NOT NULL
不是 NULL
LIKE
模糊匹配。% 表示任意多个(包括 0 个)任意字符;_ 表示任意一个字符
AND
多个条件必须都为 TRUE(1),结果才是TRUE(1)
OR
任意一个条件为 TRUE(1),结果为TRUE(1)
NOT
条件为 TRUE(1),结果为FALSE(0) 

1.1 >, >=, <, <=

这个的话也比较简单。就像下面这张图一样使用就好了。

1.2 =

这个的话也比较简单。就像下面这张图一样使用就好了。

这边唯一要注意的就是在遇到下面这张情况,如果我们用的是=的话,那么不可以进行下面这个操作。

1.3 <=>

这个的话也比较简单。就像下面这张图一样使用就好了。

在这边唯一需要注意的就是这个<=>是可以使用null比较的。

1.3 !=, <>

这个的话也比较简单。就像下面这张图一样使用就好了。

1.5 BETWEEN a0 AND a1

这个的话也比较简单。就像下面这张图一样使用就好了。

1.6 IN (option, ...)

这个的话也比较简单。就像下面这张图一样使用就好了。

1.7 IS NULL

这个的话也比较简单。就像下面这张图一样使用就好了。

1.8 IS NOT NULL

这个的话也比较简单。就像下面这张图一样使用就好了。

1.9 LIKE

这个的话稍微需要说一下。

1.9.1 %

% 是用来匹配任意多个(包括 0 个)任意字符。

比如说1%,那么它的额意思就是说包括1在内的所有以1开头的都要被包括在内。

就像下面这张图一样,因为这里t8就一个以1开头的,所以这边就取出来一个。

1.9.2 _
_ 匹配严格的一个任意字符

还是比如说1_,那么就是从10到19内的所有数。我们看下面这张图,这个_是必须要有一个数的,所以上面这个a1=1_的查询条件为空。

但是如果是_1的话,那么就是指11,21,31,41,51,61,71,81,91这些数。

1.10 AND

这个的话也比较简单。就像下面这张图一样使用就好了。

1.11 OR

这个的话也比较简单。就像下面这张图一样使用就好了。

1.12 别名不能用在 WHERE 条件中

SQL 语句的编写顺序和实际执行顺序是不同的。大致执行顺序如下:

  1. 先执行 from子句(确定数据来源表)。

  2. 然后执行 where子句(筛选行)。

  3. 再执行 select子句(选择列,并可能定义别名)。

也就是说,where子句的执行早于 select子句。当 where执行时,select中定义的别名还未被解析(相当于 “还不存在”),因此无法直接使用。

1.13 结果排序

-- ASC 为升序(从小到大)
-- DESC 为降序(从大到小)
-- 默认为 ASC

语法:

select 想要查询的列 别名 from 表名 order by 列名 desc或者asc

我们看下面这张图,我们可以发现排序的话是不用加where的。最后在后面加上desc的话就实现了降序排序,也就是从大到小。

PS:null比任何值都要小,所以在降序排序的时候是在最后面的。

1.13.1 多重排序

多重排序是我自己取的名字,就是指那些写了多个排序条件的排序。

我们看下面这张图,我们写了很多条件,那么它是怎么执行的呢?它的执行顺序是什么呢?

很简单,首先它是从左往右执行的(当然这边说的从左往右专指order by后面的那部分代码)。然后是当我们在第一个排序指令遇到相同的值的时候才会去执行其后面这个。

ORDER BY 子句中可以使用列别名。

1.14 联合使用

上面的各种筛选条件是可以在一起使用的。就像下面这张图一样。我们可以先找出两位数并且个位数是0的,然后在找出来的数据里面对其进行排序。

2. Update

接下来我们来聊聊表的更改。

语法:

update table_name set 想要更改的列=新值 确定列

这么看好像还有点抽象,给各位举个例子各位就明白了。我们看下面这张图,where a1=1就是为了找到具体要改的是那个数据,这边没有固定的写法,我们只要让计算机知道我们想要让他更改的是那个数据就好。

如果我们不写后面的where a1=1的话,那么默认就是给整张表里面的所有列的a2都改为15。

http://www.dtcms.com/a/564540.html

相关文章:

  • CV论文速递: 覆盖医学影像分析、视频理解与生成、3D场景理解与定位等方向! (10.27-10.31)
  • Redis(四):缓存击穿及其解决方案(SpringBoot+mybatis-plus)
  • 突破局域网限制,Websocket 服务远程访问cpolar新方案
  • 科普网站建设方案网站容易被百度收录
  • 深圳营销网站建设服务wordpress 语言选择器
  • 广西建设厅关公网站中国能建电子商务平台
  • 9.OpenStack管理(三)
  • 大模型应用02 || 检索增强生成Retrieval-Augmented Generation || RAG概念、应用以及现有挑战
  • 【春秋云镜】CVE-2018-19518
  • [手机AI开发sdk] 安卓上的Linux环境
  • Pandas-之时间序列处理
  • 用 Spark Shell 做交互式数据分析从入门到自包含应用
  • WindowsXP Window7等老系统和Linux Ubuntu等系统在VM虚拟机中安装VM Toools工具实现宿主机虚拟机共用粘贴板
  • 第十二章:终极叩问:我是谁,我往何方?(3)
  • 校园网站建设的缺陷怎么做考试资料网站
  • 【Android Studio】webview 组件在android TV中进行加载,始终是客户端网页的方式进行加载,解决?
  • 应对不规则负载的异步ML模型服务AWS架构设计
  • Docker、Kubernetes与AWS中控机是什么?
  • AWS Bedrock + DeepSeek-R1:开启企业级 AI 开发的新篇章
  • C++ 类似pytorch的库,工具包,或者机器学习的生态
  • 关于手表的网站精品课程网站的建设
  • 正点原子【第四期】Linux之驱动开发学习笔记-10.1 Linux 内核定时器实验
  • Go语言设计模式:命令模式详解
  • Dropout提升模型泛化能力【动手学深度学习:PyTorch版 4.6 暂退法】
  • 网站开发用什么软件有哪些安徽安庆
  • 能够沟通业务的网站彩票网站开发 违法
  • 【机器学习13】异常检测优化、推荐系统、协同过滤
  • can‘t read /etc/apt/sources.list: No such file or directory
  • 深入理解 DNS 与 ICMP:网络世界的地址解析与连通性探测
  • MCU中的RC电路(Resistor-Capacitor Circuit)