我在表中有一个字段,我使用序列化函数实例
存储在数据库中 a:3:{i:0;s:18:"Government Sectors";i:1;s:15:"Private Sectors";i:2;s:6:"Others";}
SQL字段的名称是jobtype
现在我需要根据此字段值准备搜索我的选择语句是
SELECT * FROM some_jobs WHERE jobtype='%$Keyword%' AND state=1
假设$Keyword
值是政府部门
它正在返回NULL
。我该怎么做?我可以使用SQL中的模式匹配来完成此操作,如果是,那么如何?
答案 0 :(得分:0)
在MySQL中,您可以使用关键字LIKE E.G。
SELECT * FROM some_jobs WHERE jobtype LIKE '%$Keyword%' AND state=1
%s是你可能已经知道的通配符。
LIKE类似于REGEXP,但使用起来更简单,从我读到的内容中保留了表索引,因此查询速度更快。 这将返回文本中某处包含“关键字”的行。
答案 1 :(得分:0)
要知道我在这里犯下的愚蠢错误!!
我在sql查询中使用了=而不是像term一样。
将sql查询修改为以下代码并且可以正常工作。
SELECT * FROM some_jobs WHERE jobtype LIKE '%$Keyword%' AND state=1