鍍金池/ 問答/PHP  數(shù)據(jù)庫/ mysql 字段是json格式如何做 IN 查詢?

mysql 字段是json格式如何做 IN 查詢?

我的數(shù)據(jù)庫中有一個(gè)字段是存儲用戶id的,因?yàn)橐嫒氲膗ids是一個(gè)數(shù)組所以先把他轉(zhuǎn)為了json再存入數(shù)據(jù)庫中,現(xiàn)在的問題是我要判斷某個(gè)uid是否在uids中,我該怎么做?

clipboard.png

回答
編輯回答
互擼娃

1match against

2 SELECT * FROM table WHERE field REGEXP ‘[[]?uid[]]?’;

2018年8月1日 00:28
編輯回答
別瞎鬧

不改表結(jié)構(gòu)的話,簡單點(diǎn)的做法就是在sql中先去掉兩邊的[], 然后可以利用 find_in_set 函數(shù)

2017年8月30日 13:39
編輯回答
久不遇

建議存儲這樣的值,最好存儲varchar類型的,值可以的 '1,2,3,4'

這樣 你在處理這些值的時(shí)候 你是可以這樣處理的

select * from table where find_in_set($value,uids);


2018年3月25日 15:38
編輯回答
爆扎

這種只能是當(dāng)字符串處理了。

2018年2月23日 10:32