我有一个如下表

taskId taskList
1      A, B
2      C, F, H


当我查询时

select count(*) from task_list where taskList='A, B';


OP:1

但对于,

select count(*) from task_list where taskList='B, A';


OP:0

我期望“ A,B”和“ B,A”相同。

如何实现呢?

最佳答案

您正在使用使用等号的精确比较。确切地说,“ A,B”与“ B,A”不同。

正如其他人所提到的,您可以对数据进行非规范化。

如果那不是一个选择,请改为使用like命令。像这样:

select count(*) from task_list where (taskList LIKE '%A%' AND taskList LIKE '%B%');


希望这可以帮助。
问候

关于mysql - MySQL-字符串A,B和B,A应该相同,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/55612306/

10-11 02:16