我知道如何获得包含几个字的所有结果:
SELECT * FROM `table` WHERE MATCH (`row`) AGAINST ('+word1 +word2' IN BOOLEAN MODE)
但我怎么能得到哪些不包含单词:“word1”,“word2”?我需要操作员,比如“NOT IN”。那么我如何从数据库中获取所有使用全文搜索在查询中不包含特定单词的记录?
感谢。
答案 0 :(得分:1)
您可以使用NOT
来否定条件:
SELECT * FROM `table` WHERE NOT MATCH (`row`) AGAINST ('+word1 +word2' IN BOOLEAN MODE)
MATCH
条件在找到单词的行上 true , false 在找不到单词的位置。使用NOT
可以反转每行的真/假结果。
就像:
SELECT * FROM `table` WHERE NOT row = 'abc123'
对于不特定值'abc123'的所有行都是如此。