没有前言和解释,直接看怎么用
当前我所知道两种用法:
第一种:和like的作用有点相似,但用这个函数会比like更准确的查到你想要的数据。
前提是当前的字段满足俩个要求:
类型为字符型。
储存格式为-----> 字符1,字符2,字符3.........
这是一张表,什么表不重要。
情况一:运行下面语句
select * from admin_group where FIND_IN_SET(1,rules);
结果:
select * from admin_group where FIND_IN_SET('1200',rules);
结果:
情况二:注意现在字段是id了
SELECT * from admin_group where FIND_IN_SET(id,'1,2');
结果:
SELECT * from admin_group where FIND_IN_SET(id,'1,2,4,5,15');
结果:
第二种:利用这个函数规定某些值自定义排序
同 desc,asc 排序一起用的时候会有影响,看下面的语句和结果自行体会吧
SELECT * from admin_group ORDER BY FIND_IN_SET(id,'16,15,1');
结果:
SELECT * from admin_group ORDER BY id desc,FIND_IN_SET(id,'16,15,1');
结果:
SELECT * from admin_group ORDER BY id desc,FIND_IN_SET(id,'15,16,1,2');
结果:
SELECT * from admin_group ORDER BY `status` desc,FIND_IN_SET(id,'16,15,1,2');
这里我把其中的一调数据status改成了2,为了更直观。
结果:
《--------------------------------------------------------------------------------华丽分割线-----------------------------------------------------------------------------------------------------------》
后续发现其他用的地方再更新。。。。。。。。。。。。。