某列中的字符串按逗号(,)分隔. 如 值 1:aa, bb, cc, 值 2: bb,cc, 值 3: dd,hh, 值 4: jj
查询 bb, dd 时如何把值 1,值 2,值 3 都查询出来
查询 bb, dd 时如何把值 1,值 2,值 3 都查询出来
1
U7Q5tLAex2FI0o0g May 15, 2020
FIND_IN_SET
|
2
wangyanrui May 15, 2020
是我太菜了吗,不是 LIKE '%bb%' 嘛 0.0
|
3
opengps May 15, 2020 via Android
@wangyanrui 换成字符串截取判断索引值效果更佳
|
4
YangXian May 15, 2020
find_in_set 就行了
|
5
U7Q5tLAex2FI0o0g May 15, 2020
@wangyanrui #2 值 5: aa,bbb,cc 也会被你查出来,但不对
|
6
asAnotherJack May 15, 2020
@littleylv #1 学到了,另外 FIND_IN_SET 除了处理逗号分隔,有办法处理其他分隔符吗,比如用分号分隔的有什么好的办法吗
|
7
U7Q5tLAex2FI0o0g May 15, 2020 @asAnotherJack #6 The second parameter haystack is a list of comma-separated strings that to be searched.
只能处理逗号,分号的话,可以考虑 REPLACE 替换成逗号再 FIND_IN_SET FIND_IN_SET('bb', REPLACE('aa;bb;cc', ';', ',') ) |
8
dongisking May 15, 2020
FIND_IN_SET,bb or hh
|
9
asAnotherJack May 15, 2020
@littleylv #7 多谢
|
10
su2018 OP @littleylv @dongisking 你们的意思是附言 1 那样吧
|
11
dongisking May 15, 2020
@su2018 是
|
12
wangyanrui May 16, 2020
@littleylv 可以存 ,aa,bb,cc, 这种数据,然后 LIKE '%,bb,%'; 手动 doge
|
13
thinkmore May 18, 2020
如果在 mongodb 中这种查询就非常 easy,
|