我有一个表字段events
,其中可以包含:
45
|
,例如55|65|76
我想我必须使用LIKE
,但我不知道如何。你能救我吗?
由于
答案 0 :(得分:3)
我建议您使用CONCAT
在字段之前和之后添加管道|
,然后使用LIKE
搜索。像这样:
SELECT *
FROM YourTable
WHERE concat('|',field,'|') like '%|45|%'
但是,我强烈建议您尝试规范化数据。考虑将这些存储在单独的行中,这将使搜索/维护更容易。
答案 1 :(得分:0)
要修复查询,请使用:
Select * from tbl where events='45' or events like '%|45' or events like '%|45|%' or
events like '45|%'
但这非常慢,不应该使用。
相反,请按照Marc B的说明并创建子表events (ID, event)
。