MyBatis 模糊匹配搜索实现
程序员文章站
2022-07-07 22:37:30
业务需求:根据城市筛选返回符合要求的结果
看似很容易呀
问题在于要筛选的字段,这里我们有一个字段为region_limit,这里面的存储内容为城市id,如1,2...
业务需求:根据城市筛选返回符合要求的结果
看似很容易呀
问题在于要筛选的字段,这里我们有一个字段为region_limit,这里面的存储内容为城市id,如1,2,3 或者为商圈id,如3,4,5
搜索实现:
其中 zoneList为前台选择的城市对应的所有商圈
SELECT PA.id,PA.balance_name,PA.name,PA.total_times,PA.start_time,PA.end_time,PA.template_id, PA.region_limit_type,PA.region_limit from lyancafe.t_promotion_activity PA where active='Y' and ((region_limit like CONCAT('%',',${cityId},','%' ) or region_limit like CONCAT('%',',${cityId}') or region_limit like CONCAT('${cityId},','%' ) or region_limit like '${cityId}') and region_limit_type='c' ) or (region_limit_type = 'z' and pa.region_limit like CONCAT('%',',${region},','%' ) or pa.region_limit like CONCAT('%',',${region}' ) or pa.region_limit like CONCAT('${region},','%' ) or pa.region_limit like '${region}' )