1、字符串出现在指定字符串中的位置
例:select FIND_IN_SET('b','a,v,f,d,s,b,s,e,f') as test;
返回:6
使用场景:文章有对应的栏目id,用户有自己的感兴趣栏目id字符串
select id,cate_id,FIND_IN_SET(cate_id,'4,9,10') as interest from TABLE order by interest desc;
这样 用户感兴趣的就会在前面。
优化:感兴趣的不要按照出现位置排序,而是感兴趣的归一种,没有出现的归一种
select id,cate_id,FIND_IN_SET(cate_id,'4,9,10') as interest from TABLE order by if(interest>0,0,1),id desc;
2、截取修改某一个字段内容
update TABLE set COLUMN= substring(COLUMN,3) where left(COLUMN,2)='..' ;
解释:某列前两个字符为..时,更新为从第3位开始截取后的字符串。
update TABLE set COLUMN = CONCAT(SUBSTRING(COLUMN,1,LENGTH(COLUMN)-4),'RE_STR');
修改字段尾部分