在mysql中碌宴,有時(shí)我們?cè)谧鰯?shù)據(jù)庫(kù)查詢(xún)時(shí),需要得到某字段中包含某個(gè)值的記錄颜骤,但是它也不是用like能解決的唧喉,使用like可能查到我們不想要的記錄捣卤,它比like更精準(zhǔn)忍抽,這時(shí)候mysql的FIND_IN_SET函數(shù)就派上用場(chǎng)了八孝,下面來(lái)具體了解一下。
FIND_IN_SET(str,strlist)函數(shù)
str 要查詢(xún)的字符串
strlist 字段名 參數(shù)以”,”分隔 如 (1,2,6,8)
查詢(xún)字段(strlist)中包含(str)的結(jié)果鸠项,返回結(jié)果為null或記錄
例子如下:
SELECT*fromtestwhereFIND_IN_SET('1',area)
FIND_IN_SET和like的區(qū)別
like是廣泛的模糊匹配干跛,字符串中沒(méi)有分隔符,F(xiàn)ind_IN_SET 是精確匹配祟绊,字段值以英文”,”分隔楼入,F(xiàn)ind_IN_SET查詢(xún)的結(jié)果要小于like查詢(xún)的結(jié)果。