saytik
@saytik
Веб-разработчик

Как искать по MySQL цифры начинающиеся с 0 (полнотекстовый поиск)?

База с пользователями и адресами проживания. Некоторые квартиры заведены как "п06"

Такой запрос ничего не находит
SELECT username, address FROM base WHERE MATCH (username,address) AGAINST ('+Энтуз* +36 +06' IN BOOLEAN MODE);


Такой находит Энтузиастов шоссе, д.36, кв.п06
SELECT username, address FROM base WHERE MATCH (username,address) AGAINST ('+Энтуз* +36 +п06' IN BOOLEAN MODE);


А такой запрос находит только Энтузиастов шоссе, д.36, кв.6
SELECT username, address FROM base WHERE MATCH (username,address) AGAINST ('+Энтуз* +36 +6' IN BOOLEAN MODE);


Такой запрос находит Энтузиастов шоссе, д.36, кв.16
SELECT username, address FROM base WHERE MATCH (username,address) AGAINST ('+Энтуз* +36 +16' IN BOOLEAN MODE);


p.s. ft_min_word_len = 1

Задача в том чтобы по запросу "+Энтуз* +36 +6" находил оба варианта, и по запросу "+Энтуз* +36 +06" находил "Энтузиастов шоссе, д.36, кв.п06"
  • Вопрос задан
  • 200 просмотров
Пригласить эксперта
Ответы на вопрос 1
@justpusher
Сделайте дополнительное поле, участвующее в поиске, но не отображаемое пользователю.
При вставке записи с "кв. п06" в дополнительное поле заносите "6 06".
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы