1

我有一个存储 error_code 和 error_type 的 mysql 数据库。

每个 Error_type 可以有多个 error_code 存储为逗号分隔。

这是一张桌子

id error_code error_type

1 300,200,444 拼写

2 333,310 克

如图所示 ; 拼写有3个error_code

问题:如果error_code只有300或200或444,如何查询得到error_type(文本框中只会输入1个错误代码)

让我知道是否需要任何信息或不清楚.... tnx

编辑:

我需要一个独特的 error_type

4

2 回答 2

2

您可以使用正则表达式:

select * from test
where error_code REGEXP '(^444,|,444$|,444,|^444$)'

这将确保444出现在开头、结尾或两个逗号之间;它不会444匹配另一个数字内的字符串。例如,1,2,34445,6将不匹配。

于 2012-05-04T09:22:05.733 回答
0

您可以使用like

select error_type from table where error_code like '%300%'

或者

select error_type from table where error_code like '%444%'
于 2012-05-04T09:20:57.323 回答