回答
如果你使用InnoDB表(你可能是),你可以用这样的语句:
SELECT * FROM mytable WHERE mycolumn LIKE "%my%" OR mycolumn LIKE "%school%";
对于全文搜索更好的解决办法是使用专用搜索引擎,用于上述目的的优化 - 例如elasticsearch。
感谢查询是大约我想要的 – user2952880
你可以使用FULLTEXT搜索。
全文搜索基于FULLTEXT索引,这些索引可能仅为MyISAM表创建,并且仅适用于TEXT列和非BINARY CHAR和VARCHAR列。
FULLTEXT搜索不区分大小写。这是由于可能使用FULLTEXT索引的列类型的结果。
你的情况:
SELECT * FROM mytable的WHERE MATCH(mycolumn)反对( '我的学校');
您好感谢 我尝试过,但它不会返回句子 “我的名字叫KK学校JES” – user2952880
查询:
SELECT *
FROM mytable
WHERE mycolumn LIKE "%my%"
and mycolumn LIKE "%school%";
也将返回这样的句子:
- “MySQL的学校”
- “我的老校友的父母”
但我们不希望他们。
你可以试试这个:
SELECT *
FROM mytable
WHERE mycolumn regexp ' my |^my | my$'
and mycolumn regexp ' school |^school | school$'
但是,如果在列mycolumn你有这样的句子:
- 我爱我的学校!
你应该考虑增加一个条件:
SELECT *
FROM mytable
WHERE mycolumn regexp ' my |^my | my$'
and mycolumn regexp '[^a-zA-Z]school[^a-zA-Z]|^school | school$'
感谢您的正则表达式解决方案! – mariuszs80
- 1. 找到两个句子之间匹配的第一个单词
- 2. 如何匹配句子中的最后一个单词?
- 3. MySQL的词匹配语句
- 4. MySql:在类似子句中匹配的无序单词
- 5. 如何剪切从句子集合中匹配的单词?
- 6. 将单词列表与句子匹配
- 7. MySQL查询匹配相似的单词/句子
- 8. 如何统计内容mysql匹配中的单词匹配?
- 9. 如何用Perl匹配一个句子中的顺序词?
- 10. 正则表达式匹配句子中的第一个单词
- 11. 用Perl匹配一个句子中的单词?
- 12. 匹配句子中括号内的任何单词
- 13. 两个文件并提取匹配的单词匹配一个
- 14. 用于匹配句子中的单词的正则表达式
- 15. MySQL查询来匹配一个单词
- 16. MySQL REGEXP仅匹配整个单词
- 17. MySQL REGEXP不匹配多个单词
- 18. 如何在单词中搜索句子的第一个单词
- 19. 特定句子之外的匹配词
- 20. 如何匹配“两个或多个单词”
- 21. 如何才能比较两个单词匹配的文档
- 22. grep匹配一个单词,但不匹配另一个单词
- 23. 如何比较两个句子,检索词或几个单词,如果2句子在java中
- 24. 匹配的前两个单词的前两个字母
- 25. 匹配数组中的单个单词
- 26. 如何不匹配mod_rewrite中的单词
- 27. 加入一个句子中匹配词的字段上的表
- 28. 如何用scala组合器匹配句子中的所有单词?
- 29. 如何匹配第一个单词?
- 30. Elasticsearch查询:在句子数组中匹配单词
'SELECT * FROM mytable的WHERE mytext的REGEXP “学校|我的”;'可能会奏效。 –
感谢喜的帮助 它返回的句子要么“学校”或“我的” 不能同时 – user2952880