Bootstrap

MySQL语句学习记录

文章目录

FIND_IN_SET函数

使用场景, 需要查询该字段是否包含单个值
在大多数情况下,使用 LIKE 操作符的效率会更高。这是因为 FIND_IN_SET 函数不能利用索引,而 LIKE 可以利用索引(只要不是在列的开头使用通配符)

// FIND_IN_SET 是在逗号分隔的列表中查找值
select FIND_IN_SET('12313','12323-12345678-456789,12323-12345678-456789,12313') > 0 from dual 

// 如果 deviceModelId 列只包含单个值,那么你应该使用 LIKE,并尽可能避免在列的开头使用通配符,以便利用索引。							
SELECT COUNT(*) FROM devicePackage
WHERE deviceModelId like '%8ecb9ce7-cb8465456%'
AND merchantId = ''
LIMIT 1
;