我正在AWS RDS服务器上运行MYSQL 8,并且在进行包含“&”字符的全文搜索时遇到问题:
select * from my_table where MATCH (`field`) AGAINST("a&b" IN BOOLEAN MODE)
我在其他文章中读到,MYSQL将“&”字符视为单词分隔符,当我在“ ab&cd”上针对“ ab cd”进行测试时,这似乎是正确的,并且可以正常工作。
我试图在mysql.ini中进行设置:
ft_min_word_len=1
innodb_ft_min_token_size=1
然后重建索引(使用ALTER TABLE my_table ENGINE=InnoDB
),该方法确实起作用,但是我现在得到的结果包括“ someting-b ”和“ a其他” ”等,而不只是“ a&b”。
理想情况下,我希望将最小字长保持为至少2个,以防止出现这种情况,但是找不到“ a&b”。
是否有办法将“&”设置为sql命令或ini文件中的分隔符,因为我在AWS RDS上受到限制?