【测试开发学习历程】MySQL条件查询与通配符 + MySQL函数运算(上)

news2024/11/15 6:42:26

 前言:

18日08:56,总要先写完明天的博客,才能安心准备今天或者明天的学习。

半夜爬起来写博客真的好辛苦!!!!!!!!!

回归早上八点定时博客的好习惯!!!!!!!!

数据库这部分算是简单又重要了,继续加油吧!!

感叹号对齐!!!!!!!!!!!!!!!!!

1 MySQL条件

目录

1 MySQL条件查询与通配符

1.1 条件查询

1.2 where子句

1.2.1 实例

1.2.2 支持操作符

1.3 AND、OR操作

1.3.1 AND操作符

1.3.2 OR操作符

1.3.3 优先级顺序

1.4 IN、NOT操作

1.4.1 IN操作符

1.4.2 NOT操作符

1.5 LIKE操作

1.6 通配符

1.6.1 “%” 通配符

1.6.2 “_” 通配符

2 MySQL函数运算(上)

2.1 创建计算字段

2.1.1 列的别名

2.1.2 concat()函数

2.1.3 算术运算


查询与通配符

1.1 条件查询

数据库表中一般包含大量的数据,很少需要查询表中所有行,通常只会根据特定的需要提取表中的一部分数据。这时就需要指定查询条件,即过滤条件;

在select语句中,数据库根据where子句中指定的查询条件进行过滤.

where子句位于表名之后;格式:

select 列名 from 表名 where 列满足的条件;

1.2 where子句

1.2.1 实例

从products表中查询两列,只返回product_price值为2.50的行。

注意:在同时使用order by和where子句时,order by应位于where之后,否则将会产生错误。

1.2.2 支持操作符

实例如下:

 

1.3 AND、OR操作

1.3.1 AND操作符

MySQL支持在where子句中给出多个条件,这些条件可以使用AND子句表示条件都满足时返回指定的行

格式:select 列名 from 表名 where ’列1满足的条件’ AND ’列2满足的条件’ AND …;

1.3.2 OR操作符

MySQL支持在where子句中给出多个条件,这些条件可以使用OR子句表示条件中只需要有一个满足时返回指定的行;

格式:

select 列名 from 表 where ‘列1满足的条件’ OR ‘列2满足的条件’ OR …;

1.3.3 优先级顺序

AND的优先级高于OR,当AND/OR中有多个条件的时候,需要使用()把各个条件明确地分组,防止条件的错误组合导致返回的结果不正确;

圆括号具有比AND/OR更高的优先级,MySQL首先执行圆括号内的条件。

1.4 IN、NOT操作

1.4.1 IN操作符

IN操作符用来指定条件范围,范围内的每个条件都可以进行匹配。IN取值包含在圆括号中,以逗号分隔;

格式:select 列名 from 表名 where 列名 in (value1,value2,…);

特点:

  • IN操作符的语法清晰直观;
  • 计算次序容易管理;
  • IN操作符一般比OR操作符执行速度更快;
  • IN可以包含其他select语句,使得能够动态地建立where子句。

1.4.2 NOT操作符

where子句中的NOT操作符只有一个功能,即否定它之后所跟的任何条件;

使用NOT很容易找出与条件列表不匹配的行;

例:NOT否定跟在它之后的条件,因此,MySQL不匹配1002和1003的vend_id,而是匹配1002和1003之外的vend_id;

注意:MySQL只支持使用NOT对IN、BETWEEN和EXISTS子句取反。

1.5 LIKE操作

通配符是用来匹配值的一部分的特殊字符;

为了在查找子句中使用通配符,必须使用LIKE操作符,LIKE指示MySQL后跟的查找模式利用通配符匹配而不是直接相等匹配进行比较。

1.6 通配符

1.6.1 “%” 通配符

百分号(%)在查找串中,%表示任何字符出现任意次数(包括0次),但不能匹配NULL;

例:找出所有以jet开头的产品

1.6.2 “_” 通配符

特点:

  • %与_的区别:与%不一样,_总是匹配一个字符,不能多也不能少;
  • 使用通配符会比没有通配符更消耗数据库执行查询的时间,应该在需要使用通配符的地方才使用。

2 MySQL函数运算(上)

2.1 创建计算字段

2.1.1 列的别名

当表列名比较繁琐时,为了简化和方便使用,可以给列取别名;

有些应用中,存储在表中的数据不是应用所需要的,需要创建新的字段来表示数据库中的数据进行通过计算或函数运算转换后的数据;

对拼接的结果使用别名,别名是一个字符或值的替换名,使用AS关键字创建,AS可以省略

2.1.2 concat()函数

作用:用于将多个字符串连接成一个字符串,是最重要的mysql函数之一;

格式:CONCAT(str1,str2,…);

例:

2.1.3 算术运算

MySQL支持对查询出的数据进行算术运算,支持的运行类型有:

操作符

说明

+

-

*

/

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

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

相关文章

超越标签的探索:K-means与DBSCAN在数据分析中的新视角

最近在苦恼为我的数据决定分组问题,在查找资料时,恰好看到机器学习中的无监督学习的聚类分析,正好适用于我的问题,但是我之前学机器学习时。正好没有学习无监督部分,因为我认为绝大多数问题都是有标签的监督学习&#…

robots协议详解:爬虫也要有边界感

随着互联网的迅猛发展,信息的获取变得越来越便捷,而网络爬虫(Spider)技术就是其中之一。网络爬虫是一种自动化程序,它能够遍历互联网上的网页,提取信息,用于各种用途,例如搜索引擎索引、数据挖掘、价格比较等。但是,爬虫技术虽然强大,但是也是一把双刃剑,在正当使用…

ChatGPT是什么,怎么使用,需要注意些什么?

一、ChatGPT 是什么? ChatGPT,全称聊天生成预训练转换器(Chat Generative Pre-trained Transformer),是 OpenAI 开发的人工智能(AI)聊天机器人程序,于2022年11月推出。该程序使用基于GPT-3.5、GPT-4架构的…

使用uniapp,uni-data-select组件时,内容长度没超过容器宽度时候虽然能显示全内容但是数据后边会出现三个点,逼死强迫症

项目场景: 微信小程序开发,使用uniapp,uni-data-select组件时,内容长度没超过容器宽度时候虽然能显示全内容但是数据后边会出现三个点,逼死强迫症 解决方案: 找到组件的源代码,然后删除那三个…

MeterSphere和Jmeter使用总结

一、MeterSphere 介绍 MeterSphere 是⼀站式开源持续测试平台,涵盖测试跟踪、接⼝测试、UI 测试和性能测试等,全 ⾯兼容 JMeter、Selenium 等主流开源标准,能够有效助⼒开发和测试团队在线共享协作,实现端到 端的测试管理跟踪…

日志 | 日志级别 | c/c++ | 终端显示不同的颜色

日志想必都知道 优先级从高到低依次为:OFF、FATAL、ERROR、WARN、INFO、DEBUG、TRACE、 ALL日志参考1 #define RED "\x1B[31m" #define GRN "\x1B[32m" #define YEL "\x1B[33m" #define BLU "\x1B[34m" #define MAG "…

绝地求生:受到封禁三天的玩家,静待解封即可!官方暂未发布系误封公告

首先,评论区所说的误封解除公告为假! 3.17晚上无聊刷到黑盒里有几个人一直在发一张截图,说是官方发布了公告 “表示三天的封禁系误封,已在逐步解封。” 但是在细看这个图片的时候,会发现很大一部分人都是用的一张图片…

HTML5球体下落粒子爆炸特效

HTML5球体下落粒子爆炸特效,源码由HTMLCSSJS组成,双击html文件可以本地运行效果,也可以上传到服务器里面 下载地址 HTML5球体下落粒子爆炸特效

【Flink】Flink 中的时间和窗口之窗口API使用

1. 窗口的API概念 窗口的API使用分为按键分区和非按键分区,在定义窗口操作之前,首先就要确定好是基于按键分区Keyed的数据流KeyedStream来开窗还是基于没有按键分区的DataStream上开窗。 1.1 按键分区窗口(Keyed Windows) 按键…

二蛋赠书十八期:《一本书讲透Elasticsearch:原理、进阶与工程实践》

Elasticsearch 是一种强大的搜索和分析引擎,被广泛用于各种应用中,以其强大的全文搜索能力而著称。 不过,在日常管理 Elasticsearch 时,我们经常需要对索引进行保护,以防止数据被意外修改或删除,特别是在进…

20240318uniapp怎么引用组件

在script中增加 import index from "/pages/index/index.vue" 把index直接整个作为一个组件引入 然后注册组件 在export default中增加 components: {index:index }, 注册了index组件&#xff0c;内容为import的index 然后就可以在template里使用 <index&…

03|提示工程(下):用思维链和思维树提升模型思考质量

什么是 Chain of Thought CoT这个概念来源于学术界&#xff0c;是谷歌大脑的Jason Wei等人于2022年在论文《Chain-of-Thought Prompting Elicits Reasoning in Large Language Models&#xff08;自我一致性提升了语言模型中的思维链推理能力&#xff09;》中提出来的概念。它…

双向队列广搜

适用情况 适用的情况&#xff1a;解决最短路径问题 当我们已起始点和终点时&#xff0c;我们可以采用双向队列广搜去解决问题。所谓的双向队列广搜&#xff0c;就是让起点向终点搜索&#xff0c;终点向起点搜索&#xff0c;二者同时开始&#xff0c;那么当它们第一次1相遇时&am…

RocketMQ - 一条消息写入CommitLog文件之后,如何实时更新索引文件?

Broker收到一条消息之后,其实就会直接把消息写入到CommitLog里去,但是它写入刚开始仅仅是写入到MappedFile映射的一块内存里去,后续是根据刷盘策略去决定是否立即把数据从内存刷入磁盘的。 实际上,Broker启动的时候会开启一个线程,ReputMessageService,他会把CommitLog更…

FreeRTOS教程7 事件组

目录 1、准备材料 2、学习目标 3、前提知识 3.1、什么是事件组&#xff1f; 3.1、事件组特征 3.1.1、事件组、事件标志和事件位 3.1.2、EventBits_t 数据类型 3.1.3、多个任务访问 3.2、创建事件组 3.3、操作事件组 3.4、xEventGroupWaitBits() API 函数 3.4.1、ux…

主机与windows虚拟机远程桌面实现方法

目录 一、虚拟机相关配置1. 配置虚拟机网络2. 打开虚拟机远程桌面功能3. 配置虚拟机用户与分组 二、主机相关配置 当无法通过共享文件夹实现主机与windows虚拟机文件共享时&#xff0c;可以通过主机与虚拟机远程桌面的方法实现文件的共享传输。本文主要介绍主机与虚拟机远程桌面…

【接口防重复提交】⭐️基于RedisLockRegistry 分布式锁管理器实现

目录 前言 思路 实现方式 实践 1.引入相关依赖 2.aop注解 3.切面类代码 4.由于启动时报错找不到对应的RedisLockRegistry bean&#xff0c;选择通过配置类手动注入&#xff0c;配置类代码如下 测试 章末 前言 项目中有个用户根据二维码绑定身份的接口&#xff0c;由于用户在…

诺视科技完成亿元Pre-A2轮融资,加速Micro-LED微显示芯片商业化落地

近日&#xff0c;Micro-LED微显示芯片研发商诺视科技&#xff08;苏州&#xff09;有限公司&#xff08;以下简称“诺视科技”&#xff09;宣布完成亿元Pre-A2轮融资&#xff0c;本轮融资由力合资本领投&#xff0c;老股东盛景嘉成、汕韩基金以及九合创投持续加码&#xff0c;这…

YOLOv8改进 | 图像去雾 | MB-TaylorFormer改善YOLOv8高分辨率和图像去雾检测(ICCV,全网独家首发)

一、本文介绍 本文给大家带来的改进机制是图像去雾MB-TaylorFormer,其发布于2023年的国际计算机视觉会议(ICCV)上,可以算是一遍比较权威的图像去雾网络, MB-TaylorFormer是一种为图像去雾设计的多分支高效Transformer网络,它通过应用泰勒公式展开的方式来近似softmax-at…

华为openEuler系统安装openjdk并配置环境变量

华为openEuler系统安装openjdk并配置环境变量 1、安装JDK软件包 执行dnf list installed | grep jdk 查询JDK软件是否已安装。 $ dnf list installed | grep jdk查看命令打印信息&#xff0c;若打印信息中包含“jdk”&#xff0c;表示该软件已经安装了&#xff0c;则不需要再…