1.需求:
今天遇到一个业务需求:两张MySQL表做join,两个关联键是包含关系,SQL该怎么实现。
2.思路:
由于两个关联键是包含关系,那么首先想到的就是like模糊匹配。
通常我们见过的like语法都是类似 a like ‘%aa%’; 那么根据这个思路,我们如何实现两个字段模糊匹配呢?
3.方案:
原始表a:
原始表cp:
想要的结果:
文章来源:https://www.toymoban.com/news/detail-691866.html
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模板网!