查询匹配多值字段

阅读更多

业务场景:

数据库里面某个字段保存了多个值,例如按逗号分隔  

如图下所示:

 

查询匹配多值字段_第1张图片

 

 

要筛选出包含4.2的的值

 

   1、 LIKE方式查询:

SELECT 
 truck_length
FROM
  tms_cargo t
WHERE (
    loading_type = 1 
    AND (
      truck_length = '4.2' 
      OR truck_length LIKE '4.2,%' 
      OR truck_length LIKE '%,4.2,%' 
      OR truck_length LIKE '%,4.2'
    )
  );
  

 

   2、正则表达式查询:

SELECT 
  truck_length
FROM
  tms_cargo 
WHERE 
    loading_type = 1
    AND truck_length REGEXP '^4.2,|,4.2,|,4.2$|^4.2$' 
    

 

 

 

  • 查询匹配多值字段_第2张图片
  • 大小: 12 KB
  • 查看图片附件

你可能感兴趣的:(多值筛选)