В поле language VARCHAR(2) содержится двухбковенная аббревиатура языка.
Пытаюсь вывести все записи с немецким языком:
SELECT * FROM table1 WHERE MATCH(`language`) AGAINST("de");
Почему-то именно для значения "de" это выражение возвращает пустой набор, хотя не нашел "de" в списке зарезервированных слов.
В настройках mySQL задал ft_min_word_len=1. Для остальных "языков" проблем не наблюдаю.
Почему так происходит?
Слово de присутствует в штатном списке stopwords для innoDB. Слова из этого списка игнорируются в поисковом запросе - таким образом вы задали пустой поисковый запрос.
Есть задокументированная возможность переопределить таблицу stopword, но для указанной в вопросе и комментарии задаче вовсе не нужен fulltext поиск.
Сборка персонального компьютера от Artline: умный выбор для современных пользователей