【SQL】筛选某一列字段中,截取含有关键词“XX”字段位置的前4个字段,去重后查看字段

ops/2025/1/1 5:51:33/

最近在查询数据库的一些数据,想要统计表格里有多少公司,发现表格里没有公司这一列,只能从但是有一些标题字段,只能从中筛选。

假设关键词是[公司],我们要在数据库的表格中,找到名为title的列,列里面所有含有【公司】的名称,且因为公司名称不定,则直接公司前6位的字符,直接整理出一个名单出来

要清洗的数据格式类似这样:
在这里插入图片描述
想要实现的效果:
在这里插入图片描述

要实现这个需求,我们需要编写一个SQL查询,该查询要包含下面的条件:

  1. 需要从文本中筛选包含“公司”关键词的字段

  2. 需要找到“公司”关键词在字段中的位置,然后截取“公司”关键词位置前的X个字符(X 代表多少个,这个需要自己按照现实情况决定)

  3. 需要对重复数据做去重

以下是一个SQL查询的示例,假设你的表名为your_table,列名为title,我们将使用MySQL的函数作为示例:

sql">SELECT DISTINCT SUBSTRING(title, 1, CHAR_LENGTH(title) - CHAR_LENGTH(REPLACE(title, '公司', '')) + 6) AS company_name
FROM your_table
WHERE title LIKE '%公司%';

如果想要计算数值,在distinct前面加一个count就可以了

这个查询会做以下事情:

  1. REPLACE:替换掉字段中的所有关键词,替换为空字符串。

  2. CHAR_LENGTH(title) - CHAR_LENGTH(REPLACE(title, 'XX', ''))
    计算整体的关键词的总长度。

  3. CHAR_LENGTH(title) - CHAR_LENGTH(REPLACE(title, 'XX', '')) + 4
    计算“公司”关键词前4个字符的位置。

  4. SUBSTRING(title, 1, CHAR_LENGTH(title) - CHAR_LENGTH(REPLACE(title, '公司', '')) + 4)
    根据上一步计算的位置,截取“公司”关键词前的4个字符。

  5. DISTINCT:去除结果中的重复项。

  6. WHERE title LIKE '%公司%':筛选出title列中包含“公司”关键词的字段。

如果没有用CHAR_LENGTH 来计算长度的话,使用LEFT 也可以查询,但是会获取到标题的前N个字符:

SELECT COUNT(DISTINCT LEFT(your_column, 4)) AS unique_count
FROM your_table
WHERE your_column LIKE '%医院%';

http://www.ppmy.cn/ops/146082.html

相关文章

BOOST 库在缺陷检测领域的应用与发展前景

摘要: 本文深入探讨了 BOOST 库在缺陷检测领域的具体应用,包括图像处理、机器学习以及数据处理等多个方面。详细阐述了 BOOST 库在这些领域中所发挥的关键作用,并分析了其在未来缺陷检测领域的发展前景,旨在为相关研究人员和从业者…

Redis+注解实现限流机制(IP、自定义等)

简介 在项目的使用过程中,限流的场景是很多的,尤其是要提供接口给外部使用的时候,但是自己去封装的话,相对比较耗时。 本方式可以使用默认(方法),ip、自定义参数进行限流,根据时间…

.NET平台用C#通过字节流动态操作Excel文件

在.NET开发中,通过字节流动态操作Excel文件提供了一种高效且灵活的方式处理数据。这种方法允许开发者直接在内存中创建、修改和保存Excel文档,无需依赖直接的文件储存、读取操作,从而提高了程序的性能和安全性。使用流技术处理Excel不仅简化了…

【Unity3D】ECS入门学习(一)导入及基础学习

Unity2019.4.0f1版本 打开PackageManager,开启preview 搜索Entities、Hybrid Renderer插件下载 ECS:Entity Component System 实体:作用唯一ID(世界唯一,ECS有世界概念,每个世界是独立的,你无…

【k8s】在ingress-controlller中Admission Webhook 的作用

介绍1 在 NGINX Ingress Controller 中,Admission Webhook 是一种用于增强 Kubernetes API 请求的机制,它允许你在资源(如 Ingress)被创建或更新之前对这些请求进行验证或修改。具体来说,Admission Webhook 在 NGINX …

无人机搭载rtk技术详解!

一、技术原理 RTK定位定向技术的工作原理基于载波相位差分原理。地面基准站接收来自多颗卫星的信号,并计算其精确位置及载波相位观测值,随后将这些数据通过无线电或移动通信网络实时发送给无人机上的流动站。流动站同时接收来自卫星的信号,并…

Cadence学习笔记 14-15 按模块同步抓取器件_宏观布局

基于Cadence 17.4,四层板4路HDMI电路 更多Cadence学习笔记:Cadence学习笔记 1 原理图库绘制Cadence学习笔记 2 PCB封装绘制Cadence学习笔记 3 MCU主控原理图绘制Cadence学习笔记 4 单片机原理图绘制Cadence学习笔记 5 四路HDMI原理图绘制Cadence学习笔记…

C 语言中 strlen 函数的深入剖析

目录 一、strlen 函数的基本介绍 二、strlen 函数的工作原理 三、strlen 函数的使用注意事项 四、strlen 与其他字符串处理函数的结合使用 五、strlen 在实际编程中的应用场景 六、总结 在 C 语言的编程世界里,strlen函数是一个经常被使用但又容易被误解的重要…