我对 MySQL 的全文索引有疑问,它将下划线视为单词的一部分(为什么?不知道)。这是我桌子上的字符串,VA_-_Some_Album
这是它的查询:
SELECT
*
FROM
`mytable`
WHERE
MATCH (`name`) AGAINST ('+Some* +Album*' IN BOOLEAN MODE)
ORDER BY `sdate` DESC
LIMIT 3
MySQL为此查询返回一个空集,除非我将其更改为,+*Some*
因为下划线是单词的一部分(_Some
而不是Some
)。这对我不利,因为当添加额外的星号 (*) 时,加号停止运行,我没有完成“AND”。
我试图更改字符集定义,并重建全文索引但没有。
有任何想法吗?改变字符串的存储方式不取决于我。谢谢!