1 字符串
1.1 替换字符串 REPLACE
update 表名 set 字段名=REPLACE (字段名,'原来的值','要修改的值')
update aaa set ac_name = REPLACE(ac_name,'积分星球','积分中心') where ac_name like '%积分星球%';
1.2 字符串交集
求两个字符串是否有交集,比如表中数据是 1,2,3 ,搜索条件是 2,3,4,需要查询到交集数据。
select * from user where concat(column1, ',') regexp concat(replace(#{request.str2},',',',|'),',')
//str1 为字段名 ;
1.3 时间段交集
查询两个时间段的交集
数据库的字段 start_time, end_time,输入的字段 startTime, endTime
方法一:
select * from xxxx where
(start_time <= startTime and end_time >= startTime)
or
(start_time <= endTime and end_time >= endTime)
or
(start_time >= startTime and end_time <= endTime)
or
(start_time s= startTime and end_time >= endTime);
方法二:通过取反获取交集
select * from xxxx where
!(start_time > endTime or end_time <= startTime);
方案三:重叠函数
select * from xxxx where
INTERVAL(start_time, end_time) INTERSECT INTERVAL (startTime, endTime)