mysql两张表模糊匹配
时间: 2023-08-17 20:14:47 浏览: 154
两张MySQL表进行模糊匹配可以使用like语法来实现。首先,需要确保两个关联键是包含关系。可以使用concat函数将关联键拼接成模糊匹配的格式。例如,如果要实现两个字段模糊匹配,可以使用类似以下的语句:
```
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,'%')
```
这个查询语句中,使用了concat函数将cp.config_name拼接成了模糊匹配的格式,然后使用like语法进行匹配。\[1\]
另外,如果需要求出技能的频率,可以使用类似以下的语句:
```
SELECT skill, COUNT(*) as quantity
FROM skill_table st
INNER JOIN v_data_clean v
ON v.parse2_job_detail LIKE CONCAT('%',st.skill,'%')
GROUP BY st.skill
```
这个查询语句中,使用了concat函数将st.skill拼接成了模糊匹配的格式,然后使用like语法进行匹配,并使用count函数统计频率。\[2\]
#### 引用[.reference_title]
- *1* [MySQL两个字段模糊匹配](https://blog.csdn.net/weixin_43433596/article/details/131130613)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^insertT0,239^v3^insert_chatgpt"}} ] [.reference_item]
- *2* [MySQL中两个表间的模糊查询](https://blog.csdn.net/qq_45927174/article/details/129620770)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^insertT0,239^v3^insert_chatgpt"}} ] [.reference_item]
[ .reference_list ]
阅读全文