如何使用 MySQL 的 find_in_set() 函數(shù)精確匹配包含特定值的字段?

如何使用 MySQL 的 find_in_set() 函數(shù)精確匹配包含特定值的字段?

精確匹配包含特定值的字段

可以使用 mysql 的 find_in_set() 函數(shù),以確定某個(gè)字段的值是否包含指定的子字符串。這對(duì)于查找包含逗號(hào)分隔值的字段特別有用,因?yàn)槟:樵?xún)無(wú)法準(zhǔn)確匹配這些值。

使用 find_in_set() 查詢(xún)

要使用 find_in_set() 函數(shù),語(yǔ)法如下:

select * from 表名 where find_in_set(子字符串, 字段名) > 0

其中:

  • 子字符串 是要查找的特定值。
  • 字段名 是要搜索的字段名稱(chēng)。

應(yīng)用于你的問(wèn)題

在你的示例中,可以使用 find_in_set() 函數(shù)以數(shù)字 35 為目標(biāo)查找 ids 字段:

SELECT * FROM 表名 WHERE FIND_IN_SET(35, ids) > 0

該查詢(xún)將返回所有 ids 字段包含子字符串 “35” 的行,并且只包含符合條件 “34,35,36,37” 的行,而不包含 “350” 行。

? 版權(quán)聲明
THE END
喜歡就支持一下吧
點(diǎn)贊9 分享
站長(zhǎng)的頭像-小浪學(xué)習(xí)網(wǎng)月度會(huì)員