Mysql ngram fulltext index doesn't work with utf8mb4_bin
Asked Answered
R

0

7

I'm using utf8mb4_bin for title column so i expected it's fulltext case-sensitive search. But actually the query return empty.

CREATE TABLE `test_table` (
`id` int NOT NULL AUTO_INCREMENT,
`title` longtext CHARACTER SET utf8mb4 COLLATE utf8mb4_bin NOT NULL,
PRIMARY KEY (`id`),
FULLTEXT KEY `title` (`title`) WITH parser ngram) ENGINE=InnoDB AUTO_INCREMENT=173 DEFAULT
CHARSET=utf8mb4 COLLATE=utf8mb4_bin;

INSERT INTO test_table value (NULL, 'Hello');

SELECT *
FROM test_table
WHERE match(title) against ('Hello' in boolean MODE) > 0; // return empty

But it works if i insert and query "hello", does ngram parser try to lowercase to query terms?

Reconstructionism answered 26/5, 2022 at 8:3 Comment(0)

© 2022 - 2024 — McMap. All rights reserved.