mysql 中 FIND IN SET 的使用

2021-08-21 13:26:05 字數 515 閱讀 4979

表a和表b相互關聯,是一對多的關係,a中乙個記錄對應多個b中的記錄。

要求在不建立中間表的情況下,通過a中的乙個字段可以找到多個b中的記錄。

a:

id | fid   | family

1| 1,2,3 | english

b:

id | name

1| a

2| b

3| c

表a中有一條記錄,記錄了english家族的三個字母,通過fid指向表b,可以查詢到這三個字母的name值。

select * from b where find_in_set(id,(select fid from a where family = 'english'))
這裡不能用in,誰試誰知道。

mysql查詢字元轉換用cast(id as varhcar(255))記得一定要帶上255指定長度,不然會報錯。

mysql中FIND IN SET的使用

在mysql中,有時我們在做資料庫查詢時,需要得到某字段中包含某個值的記錄,但是它也不是用like能解決的,使用like可能查到我們不想要的記錄,它比like更精準,這時候mysql的find in set函式就派上用場了,下面是find in set的使用方法。find in set str,st...

mysql中的find in set 函式

mysql中提供了乙個find in set 函式,用於檢索乙個字串在乙個字串集合 以逗號分隔的字串 中的位置,如果檢索到了,則返回該匹配的字串所在的位置 如果檢索不到,則返回0。find in set str,strlist 簡單例子 select find in set yanggb1 yang...

mysql中find in set 的使用

mysql手冊中find in set函式的語法 find in set str,strlist str 要查詢的字串 strlist 欄位名 引數以 分隔 如 1,2,6,8 查詢字段 strlist 中包含 str 的結果,返回結果為null或記錄 假如字串str在由n個子鏈組成的字串列表str...