mysql的函数用途_MYSQL小函数大用途之-------FIND_IN_SET

本文详细介绍了MySQL中的FIND_IN_SET函数,包括其使用方法和应用场景。FIND_IN_SET用于在逗号分隔的字符串中查找指定元素的位置,可用于精确匹配和自定义排序。示例中展示了在不同查询和排序场景下的应用,帮助读者理解如何在实际数据库操作中有效利用该函数。
摘要由CSDN通过智能技术生成

没有前言和解释,直接看怎么用

当前我所知道两种用法:

第一种:和like的作用有点相似,但用这个函数会比like更准确的查到你想要的数据。

前提是当前的字段满足俩个要求:

类型为字符型。

储存格式为-----> 字符1,字符2,字符3.........

这是一张表,什么表不重要。

914d834ac18ae75d7b6b92920848f7ff.png

情况一:运行下面语句

select * from admin_group where FIND_IN_SET(1,rules);

结果:

12807231054f68d65caf2c042ac2e49d.png

select * from admin_group where FIND_IN_SET('1200',rules);

结果:

f01a1e2514de10f1aae30ceebc9fa3d4.png

情况二:注意现在字段是id了

SELECT * from admin_group where FIND_IN_SET(id,'1,2');

结果:

229c5fa7e18acafd2ffce63e31815666.png

SELECT * from admin_group where FIND_IN_SET(id,'1,2,4,5,15');

结果:

39860432a850cca9555ff22c1f87d473.png

第二种:利用这个函数规定某些值自定义排序

同 desc,asc 排序一起用的时候会有影响,看下面的语句和结果自行体会吧

SELECT * from admin_group ORDER BY FIND_IN_SET(id,'16,15,1');

结果:

2ff230c0766f7257325d83da9e24c933.png

SELECT * from admin_group ORDER BY id desc,FIND_IN_SET(id,'16,15,1');

结果:

db16cb898d1a0371267e455fecde5e8c.png

SELECT * from admin_group ORDER BY id desc,FIND_IN_SET(id,'15,16,1,2');

结果:

fb0f26e1eb141a6bda72160dda8222f8.png

SELECT * from admin_group ORDER BY `status` desc,FIND_IN_SET(id,'16,15,1,2');

这里我把其中的一调数据status改成了2,为了更直观。

结果:

ad381f5530d7cd3dc321d2bd430c2503.png

《--------------------------------------------------------------------------------华丽分割线-----------------------------------------------------------------------------------------------------------》

后续发现其他用的地方再更新。。。。。。。。。。。。。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值