在MySQL的文本列中searchstring
我有一个列,存储为一个string的xml的MySQL表。 我需要findxml列包含给定的6个字符的string的所有元组。 没有别的事情 – 我需要知道的是,如果这6个字符的string是否存在。
所以这可能没有关系,文本被格式化为XML。
问题:如何在mysql中search? 即SELECT * FROM items WHERE items.xml [contains the text '123456']
有没有办法可以使用LIKE操作符来做到这一点?
你可以使用LIKE
子句来做一些简单的string匹配:
SELECT * FROM items WHERE items.xml LIKE '%123456%'
如果您需要更高级的function,请查看MySQL的全文searchfunction: http : //dev.mysql.com/doc/refman/5.1/en/fulltext-search.html
使用像可能需要更长的时间,所以使用full_text_search
Select * from items where match(items.xml) against ('your_search_word')
SELECT * FROM items WHERE `items.xml` LIKE '%123456%'
LIKE
的%
运算符表示“任何东西都可以在这里”。
为什么不使用LIKE?
SELECT * FROM items WHERE items.xml LIKE '%123456%'
你意思是:
SELECT * FROM items WHERE items.xml LIKE '%123456%'