Поиск для объединенной строки в нескольких столбцах в таблице в MySQL - PullRequest
0 голосов
/ 08 января 2012

У меня есть одно текстовое поле ввода пользователя для адресной строки, т.е. оно не разделено на номер блока, адрес улицы, город, штат и почтовый индекс.Однако моя таблица MySql имеет отдельные столбцы для каждого компонента адреса.Моя задача состоит в том, чтобы взять адресную строку у пользователя и сравнить ее с адресной таблицей и вернуть идентификатор строки, которой она соответствует.

Как выполнить обратный поиск всей строки для этих отдельных лиц?столбцы в адресной таблице?Кроме того, разобрать строку нелегко, поскольку пользователь может ввести несколько пробелов, а названия улиц могут быть сложными и могут содержать несколько слов.

Таким образом, для суммирования, если пользователь вводит 123 South Main St Los AngelesCA 92032, тогда я должен выполнить поиск по таблице адресов со столбцами (идентификатор адреса, номер блока, улица, город, штат, почтовый индекс) и вернуть идентификатор адреса.

Спасибо, Шакира

1 Ответ

1 голос
/ 08 января 2012
select * 
from Address
where concat(street, city) like '%input%';

Вам потребуется настройка полнотекстового поиска, см. http://devzone.zend.com/26/using-mysql-full-text-searching/ и http://dev.mysql.com/doc/refman/5.5/en/fulltext-search.html

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...