MySQL两个字段模糊匹配

这篇具有很好参考价值的文章主要介绍了MySQL两个字段模糊匹配。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

1.需求:

今天遇到一个业务需求:两张MySQL表做join,两个关联键是包含关系,SQL该怎么实现。

2.思路:

由于两个关联键是包含关系,那么首先想到的就是like模糊匹配。
通常我们见过的like语法都是类似 a like ‘%aa%’; 那么根据这个思路,我们如何实现两个字段模糊匹配呢?

3.方案:

原始表a:
sql中两个表的两个字段模糊匹配,mysql,数据库,mysql,数据库
原始表cp:
sql中两个表的两个字段模糊匹配,mysql,数据库,mysql,数据库
想要的结果:
sql中两个表的两个字段模糊匹配,mysql,数据库,mysql,数据库

select
    a.*,
		cp.*,
    case when cp.config_name is not null then concat(class_lv1,'-',class_lv2) else '-' end as class
from 
(
    SELECT
        config_name,
        cluster
    FROM pf_cost_daily_summary
    WHERE day_id=20230608
    group by day_id,hulk_id,config_name,cluster,cluster_path
)a
left join pf_cost_classproject_hdfs cp on a.cluster=cp.cluster and a.config_name like concat('%',cp.config_name,'%')

4.总结:

两个字段模糊匹配:文章来源地址https://www.toymoban.com/news/detail-691866.html

a.config_name like concat('%',cp.config_name,'%')

到了这里,关于MySQL两个字段模糊匹配的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • Mysql 字段模糊查询,在页面中输入%查询全部的问题处理

    一、背景   测试小妹闲着无聊,针对某一个查询项进行“ % ”测试,正常查询效果应该是返回空数据,但是却查出所有的数据。 二、解决方案 1、在使用mybatis的模糊查询时,有两个特殊符号需要注意: %(百分号):相当于任意多个字符; _(下划线):相当于任意的单个字符;

    2024年02月01日
    浏览(39)
  • MySQL两个表的亲密接触-连接查询的原理

    MySQL对于被驱动表的关联字段没索引的关联查询,一般都会使用 BNL 算法。如果有索引一般选择 NLJ 算法,有 索引的情况下 NLJ 算法比 BNL算法性能更高。 关系型数据库还有一个重要的概念:Join(连接)。使用Join有好处,也会坏处,只有我们明白了其中的原理,才能更多的使用

    2024年01月25日
    浏览(42)
  • 修改MySQL所有表的编码或者修改某个字段的编码

    在修改之前需要确认MySQL服务器的默认字符集和排序规则是utf8mb4,否则需要先修改MySQL服务器的默认字符集。可以通过以下命令查看MySQL服务器当前的默认字符集和排序规则: 如果当前默认字符集和排序规则不是utf8mb4,可以在MySQL的配置文件(如 my.cnf)中添加以下内容: 然后

    2024年02月08日
    浏览(44)
  • es多字段模糊匹配wildcardQuery,java实现

    es 版本:7.10.1 spring-cloud版本:2.3.5.RELEASE spring-boot-starter-data-elasticsearch 版本 2.3.12.RELEASE spring-data-elasticsearch 版本 4.0.9.RELEASE es查询,需求:title或者content任意一个字段能匹配到即可 使用dsl查询语句如下,构建一个query ,should只要一个匹配即可 运行结果,可以查出数据

    2024年02月11日
    浏览(39)
  • 【MySQL】表的增删改查——MySQL基本查询、数据库表的创建、表的读取、表的更新、表的删除

         CURD是一个数据库技术中的缩写词,它代表Create(创建),Retrieve(读取),Update(更新),Delete(删除)操作。 这四个基本操作是数据库管理的基础,用于处理数据的基本原子操作。      在MySQL中,Create操作是十分重要的,它帮助用于创建数据库对象,如数据

    2024年03月18日
    浏览(69)
  • 关于mysql数据库模糊查询的潜在问题

    初学者在学习的时候经常会写下面的模糊查询语句: 有两方面的问题,第一,我们从结果分析入手: 我们想看到的是什么,我们想看到的是蔡徐坤这个字符串能出现在我搜索的第一个位置,而不是我明明搜的蔡徐坤,蔡徐坤却出现在了最后面,前面一堆不太相干的。而之所

    2024年02月13日
    浏览(41)
  • 如何使用ES更有效率的进行多字段模糊匹配

    ​ 有时候需要ES模糊多个多个和中文相关的字段,可以把多个字段合成一个逻辑意义上的字段进行模糊 此时需要两个配置: 1、copy_to (将多个字段整合成一个字段)官方文档:https://www.elastic.co/guide/en/elasticsearch/reference/5.5/copy-to.html 2、ngram (分词器在对纯中文或者中英文混合相关等

    2024年02月11日
    浏览(43)
  • MySQL数据库 - 表的操作

    目录 一、创建表 二、创建表案例 1、显示当前使用的数据库名 2、创建表  2.1 MyISAM存储引擎表 2.2 InnoDB存储引擎表 三、查看表结构  四、修改表 1、新增列   2、修改列类型 3、修改列名 4、修改表名  5、删除列   五、删除表 表的操作至少会涉及如下两类SQL语句: • DDL(

    2024年02月13日
    浏览(42)
  • MySQL数据库——MySQL数据表添加字段(三种方式)

    MySQL 数据表是由行和列构成的,通常把表的“列”称为字段(Field),把表的“行”称为记录(Record)。随着业务的变化,可能需要在已有的表中添加新的字段。 MySQL 允许在开头、中间和结尾处添加字段。 一个完整的字段包括字段名、数据类型和约束条件。MySQL 添加字段的语

    2024年02月08日
    浏览(92)
  • 【MYSQL高级】Mysql 表的七种连接方式【附带练习sql】

    图形 连接方式 说明 SQL 内连接 共有部分 SELECT select_list FROM TableA A INNER JOIN TableB B ON A.Key = B.Key; 左连接 A表独有+共有部分 SELECT select_list FROM TableA A LEFT JOIN TableB B ON A.Key = B.Key; 右连接 B表独有+共有部分 SELECT select_list FROM TableA A RIGHT JOIN TableB B ON A.Key = B.Key; A的独有 SELECT select_l

    2024年02月04日
    浏览(44)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包