MySql 使用in匹配字串資料缺少

2022-08-22 12:24:14 字數 721 閱讀 3653

find_in_set(str,strlist)

str 要查詢的字串

strlist 欄位名 引數以」,」分隔 如 (1,2,6,8)

查詢字段(strlist)中包含(str)的結果,返回結果為null或記錄

假如字串str在由n個子鏈組成的字串列表strlist 中,則返回值的範圍在 1 到 n 之間。 乙個字串列表就是乙個由一些被 『,』 符號分開的子鏈組成的字串。如果第乙個引數是乙個常數字串,而第二個是type set列,則find_in_set() 函式被優化,使用位元計算。 如果str不在strlist 或strlist 為空字串,則返回值為 0 。如任意乙個引數為null,則返回值為 null。這個函式在第乙個引數包含乙個逗號(『,』)時將無法正常執行。

例子:mysql> select find_in_set('b', 'a,b,c,d'); 

-> 2 因為b 在strlist集合中放在2的位置 從1開始

select find_in_set('1', '1'); 返回 就是1 這時候的strlist集合有點特殊 只有乙個字串 其實就是要求前乙個字串 一定要在後乙個字串集合中才返回大於0的數 

select find_in_set('2', '1,2'); 返回2 

select find_in_set('6', '1'); 返回0

去掉末尾逗號  substring_index(aaa,',',(length(aaa)/2))

字串匹配

題目描述 讀入資料string 然後讀入乙個短字串。要求查詢string 中和短字串的所有匹配,輸出行號 匹配字串。匹配時不區分大小寫,並且可以有乙個用中括號表示的模式匹配。如 aa 123 bb 就是說aa1bb aa2bb aa3bb都算匹配。輸入 輸入有多組資料。每組資料第一行輸入n 1 n ...

字串匹配

time limit 1000ms memory limit 65536k 給定兩個字串string1和string2,判斷string2是否為string1的子串。輸入包含多組資料,每組測試資料報含兩行,第一行代表string1,第二行代表string2,string1和string2中保證不出現...

字串匹配

面試題 給一串很長的字串,要求找到符合要求的字串,例如目的串 123 1 3 2 12 3 這些都要找出來 思路一 利用兩層迴圈,逐個查詢目的串中的字元,比如先查詢字元 1 是否在長字串中,再查詢 2 是否在長字串中,直到目的串遇到 0 是 include include include int m...