MySQL如何从数据中截取所需要的字符串

有这样的一个场景,我想从我的表里面进行数据截取,我的数据内容大致如下:
张三-建外SOHO-2-16 POA 20210518.pdf
我想获取数据中的:20210518这一日期部分,
这种情况可以使用MySQL的SUBSTRING_INDEX函数来实现:

SELECT 
SUBSTRING_INDEX(SUBSTRING_INDEX(column_name, ' ', -1), '.', 1) AS extracted_date
FROM your_table;
  1. 使用 SUBSTRING_INDEX(column_name, ’ ', -1) 代表从右向左截取列值,以空格为分隔符,返回最后一个部分,即 “20210518.pdf”。
  2. 然后,再次使用 SUBSTRING_INDEX(…, ‘.’, 1) 代表从左向右截取这个部分,以点号作为分隔符,返回日期部分,即"20210518"。

如果我表中的数据有可能是:Man 101, Woman C4, Gender 1, The Barracks,Zhang san,Receipt20220727(1).pdf 这种,那么通过上边的函数就不能实现了。因为数据样本中日期的位置和格式不固定,所以就可以考虑使用正则表达式来提取日期。

SELECT REGEXP_SUBSTR(column_name, '[0-9]{8}') AS extracted_date
FROM your_table;

这个查询使用了正则表达式 [0-9]{8},它匹配包含8个数字字符(即日期部分)的子字符串。REGEXP_SUBSTR 函数将匹配的子字符串提取出来作为 extracted_date。

详细的函数说明和示例请参考MySQL的官方文档:

https://dev.mysql.com/doc/refman/8.0/en/regexp.html#function_regexp-substr

另外附上SUBSTRING_INDEX函数的简要说明,详情请参考官方文档:

SUBSTRING_INDEX(str,delim,count)

参数所代表的含义解释如下:

返回从字符串 str 的第 count 个出现的分隔符-即 delim 之后的字符串部分。
如果 count 是正数,则返回从 str 边开始计数的第 count 个 分隔符-delim(不包含分隔符delim)边的字符串。
如果 count 是负数,则返回从 str 边开始计数的第 (count 的绝对值) 个分隔符-delim(不包含分隔符delim)边的字符串。

具体的示例有需要的可以自行去尝试。

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

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

相关文章

uView CountDown 倒计时

该组件一般使用于某个活动的截止时间上,通过数字的变化,给用户明确的时间感受,提示用户进行某一个行为操作。 #平台差异说明 App(vue)App(nvue)H5小程序√√√√ #基本使用 通过time参数设置…

一文读懂$mash 通证的 “Fair Launch” 规则,将公平发挥极致

Solmash 是Solana生态中由社区主导的铭文资产LaunchPad平台,该平台旨在为Solana原生铭文项目,以及通过其合作伙伴SoBit跨链桥桥接到Solana的Bitcoin生态铭文项目提供更广泛的启动机会。有了Solmash,将会有更多的Solana生态的铭文项目、资产通…

cocos2dx 适配64位 arm64-v8a 30 lua 提示 bad light userdata pointer 黑屏

目标 30 在 android 12 中运行 报 D/cocos2d-x debug info: [LUA ERROR] bad light userdata pointer ,导致黑屏 下载最新的Cocos2dx 4.0,将其中的luajit (cocos2d-x\external\lua\luajit)替换到自己的cocos对应的目录中。

工业物联网上篇——什么是IIOT?

工业物联网背后的理念是使用工业设施中“哑巴设备”多年来产生的数据。装配线上的智能机器不仅可以更快地捕获和分析数据,且在交流重要信息方面也更快,这有助于更快、更准确地做出业务决策。 信息技术(IT)和运营技术(O…

MySQL取出N列里最大or最小的一个数据

如题,现在有3列,都是数字类型,要取出这3列里最大或最小的的一个数字 -- N列取最小 SELECT LEAST(temperature_a,temperature_b,temperature_c) min FROM infrared_heat-- N列取最大 SELECT GREATEST(temperature_a,temperature_b,temperat…

Hadoop之MapReduce 详细教程

MapReduce仅作了解,生产上很少使用该计算程序 1、MapReduce介绍 MapReduce 思想在生活中处处可见。或多或少都曾接触过这种思想。MapReduce的思想核心是“分而治之”,适用于大量复杂的任务处理场景(大规模数据处理场景)。即使是…

Centos 磁盘挂载和磁盘扩容(新加硬盘方式)

步骤总结如下 一、对磁盘进行分区 二、对磁盘进行格式化 三、将磁盘挂载到对应目录 四、做开机自动挂载磁盘 磁盘分区 1.使用命令:fdisk -l 查看磁盘(注:正常在Centos7中第一块数据盘标识一般是/dev/sda,第二块数据盘标识一般是/dev/sdb&…

WebGIS开发的常见框架及优缺点

WebGIS开发引擎的发展历程: 内容来自公众号:Spatial Data 地图API分类 WebGIS系统通常都围绕地图进行内容表达,但并不是有地图就一定是WebGIS,所以下面要讨论下基于Web的地图API分类及应用场景。Web上的Map API主要分类&#xff…

网络基础面试题(一)

1.ICMP是什么协议?处于哪一层? ICMP(Internet Control Message Protocol)是一种网络协议,用于在IP网络中传递控制消息和错误报告。它是在IP协议之上运行的协议。 ICMP主要用于在网络中的不同主机和路由器之间传…

基于Java+SpringBoot+vue+elementUI私人健身教练预约管理系统设计实现

基于JavaSpringBootvueelementUI私人健身教练预约管理系统设计实现 欢迎点赞 收藏 ⭐留言 文末获取源码联系方式 文章目录 基于JavaSpringBootvueelementUI私人健身教练预约管理系统设计实现一、前言介绍:二、系统设计:2.1 性能需求分析2.2 B/S架构&…

typora的笔记丢失了怎么办?

突然打开电脑发现原本保存的typora的笔记全部不见了,头痛…… 解决方法:点击typora中的文件,选择偏好设置,点击[恢复未保存的草稿],然后可以在文件夹中找到最后一次保存该文件的版本。 自己又将自动保存勾选上了&…

向爬虫而生---Redis 拓宽篇1 < pipeline传输效率>

前言: 都知道,Redis是一款高效的内存数据库;每条命令都能很快响应,但是如果我们把服务器布在网络上,每次一个命令来回传送也是需要花费时间的; pipeline传输技术则是进一步提高Redis的性能和传输效率的一种方法。 正文: pipeline与普通命令发送方式的区别 Pipeline是一种机制&…

SQL中 Group by Grouping Sets 分组的用法

文章目录 1. 用法2. 语法3. 实际应用3.1 求总和与小计3.2 按多个维度分组3.3 标记小计和总计 1. 用法 将Grouping Sets 运算符添加到Group by 子句中,使用Grouping Set 可以在一个查询中指定数据的多个分组,其结果与针对指定的组执行union all 运算等效…

基于LLM+RAG的问答

每日推荐一篇专注于解决实际问题的外文,精准翻译并深入解读其要点,助力读者培养实际问题解决和代码动手的能力。 欢迎关注公众号 原文标题:LLMRAG based Question Answering 原文地址:https://teemukanstren.com/2023/12/25/llm…

14.7-时序反馈移位寄存器建模

时序反馈移位寄存器建模 1,阻塞赋值实现的LFSR,实际上并不具有LFSR功能1.1.1,RTL设计,阻塞赋值1.1.2,tb测试代码1.1.3,波形仿真输出,SIM输出,没实现LFSR1.2.1,RTL设计&am…

imgaug库指南(二):从入门到精通的【图像增强】之旅

文章目录 引言前期回顾代码示例小结结尾 引言 在深度学习和计算机视觉的世界里,数据是模型训练的基石,其质量与数量直接影响着模型的性能。然而,获取大量高质量的标注数据往往需要耗费大量的时间和资源。正因如此,数据增强技术应…

【零基础入门TypeScript】TypeScript - 概述

目录 什么是 TypeScript? TypeScript 的特点 TypeScript 和 ECMAScript 为什么使用 TypeScript? TypeScript 的组件 声明文件 JavaScript 是作为客户端语言引入的。Node.js 的发展也标志着 JavaScript 成为一种新兴的服务器端技术。然而&#xff0…

婴儿专用洗衣机哪个牌子比较好?高性价比婴儿洗衣机推荐

随着家中新生命的降临,一大批婴儿专用的物品也陆续进入到家中,虽然有很多东西确实能在育儿之路上提供很多帮助,不过也有一些东西“很坑”。婴儿洗衣机这一产品是专为有婴幼儿的家庭或者有特殊需求的人士所研发的,它的容量以及体积…

【教学类-43-15】 20240103 (5宫格数独:内存数据不够计算) 不重复的基础模板数量:未知

背景需求: 测试5宫格有多少种不重复的基础模板(只测试所有的25数字一组有多少个) # 测试11*11格,2*2一共4套3*3 宫格目的:数独14 5宫格有不同的基础模板 作者:阿夏 时间:2024年01月04日 13:…

unity学习笔记----游戏练习04

一、开发阳光生产功能 向日葵的生产过程需要动画和时间 1.生产动画 选中Sunflower,然后选中窗口再选中 创建新的剪辑开始制作动画,向日葵生产动画的过程是一个从暗到亮然后持续一段时间再到暗的过程。因此只需要在对应的时间改变颜色即可。 为了保证是…