Форум: "Базы";
Текущий архив: 2005.11.27;
Скачать: [xml.tar.bz2];
ВнизПоиск в БД Найти похожие ветки
← →
AlexLines (2005-10-15 13:39) [0]С помощью оператора Like, к примеру, можно найти точное слово или фразу, не точное слово - Like "%Иван%" (найдет Иванов, Иванова, Иванову и т.д., а каким образом можно найти фразы - Иванов Григорий Александрович, Иванову Григорию Александровичу, Ивановым Григорием Александровичем, ведь если написать
(Like "%Иван%") and (Like "%Григори%") and (Like "%Александрович%") эти слова в тексте поля мемо не будут найдены подряд, а в разных частях текста.
Например в начале текста "Иванов Лев Львович" будет найден Иванов
В середине текста "Василейского Геннадия Александровича" - Александрович
и т.д.
Спасибо
← →
Anatoly Podgoretsky © (2005-10-15 13:44) [1]Ну так это не секрет даже, а просто основы.
← →
AlexLines (2005-10-15 13:52) [2]Да Анатолий. Я только изучаю SQL
Если можно хотя бы ссылку на статью и т.п.
← →
Anatoly Podgoretsky © (2005-10-15 13:54) [3]У тебя в комплекте есть справка по синтаксису LocalSQL
← →
AlexLines (2005-10-15 13:56) [4]Сейчас поищу
← →
AlexLines (2005-10-15 15:45) [5]Пока не справляюсь с решением подобной задачи даже при помощи Help LocalSQL
Может быть кто-нибудь подскажет основные пути решения
Заранее благодарю
← →
msguns © (2005-10-16 09:48) [6]LIKE "%Иван%Григори%Александрович%"
← →
Павел © (2005-10-16 10:05) [7]не, это ему тоже не подойдет.
AlexLines:
надо использовать в выражении like символ _
например
like "Иванов_ Григори_ Александрович" найдет:
Иванова Григория Александровича
Иванову Григорию Александровичу
Ивановы Григории Александровичи
← →
msguns © (2005-10-16 10:13) [8]>Павел © (16.10.05 10:05) [7]
не найдет ;)
← →
Павел © (2005-10-16 11:06) [9]почему? :)
← →
AlexLines (2005-10-16 12:44) [10]
> LIKE "%Иван%Григори%Александрович%"
Проблема заключается в том чтобы оператор Like нашел Не все включение слова в поле, а именно Иванов Григорий Александрович (или чу). В том варианте который предлагаете вы будет найдены записи такого вида: Иванов хороший работник, Григорий Александрович его поддерживает
← →
Anatoly Podgoretsky © (2005-10-16 12:53) [11]Используй обработчик OnFilterRecord
← →
msguns © (2005-10-16 12:53) [12]>Павел © (16.10.05 11:06) [9]
>почему? :)
Потому что пишем, не проверяя, фигню.
>AlexLines (16.10.05 12:44) [10]
Дорогой, может неплохо бы уточнить две вещи:
1. Что за информация содержится в поле, где ищем: биография огурцов, милицейские протоколы о задержании кучи Ивановых и Петровых и т.д.
2. Что все-таки ищем: любое упоминание о Иванове или конкретно ФИО как оно записано в паспорте ?
Где гарантия, что не напишут один раз "Иванову Григорию Александровичу", в другой раз "Григорию Александровичу Иванову", а в третий вообще "Иванову Г.А."
И что мы найдем-то ?
← →
Павел © (2005-10-16 13:01) [13]AlexLines:
я же тебе написал используй символ "_" вот и все (работает, только что сам проверил) или напиши UDF
← →
msguns © (2005-10-16 13:11) [14]>Павел © (16.10.05 13:01) [13]
>я же тебе написал используй символ "_" вот и все (работает, только что сам проверил) или напиши UDF
Беда не в том, что глупости говорим, а в том, что на них настаиваем.
В школу, в 3-й класс ! Вроде там падежи изучают ? Кроме того, как твой "универсальный" запрос разберется с грамматическими ошибками и "очепятками", коих, как известно, полно в любых достаточно обширных текстах. И как он справится с двумя пробелами или неполным указанием имени или отчества ? Или указанными не в том порядке ?
Я постю не потому, что охота поспорить с такими "советчиками", а потому, что имею опыт подобных проблем, когда надо выбирать упоминания об объекте, а не сами объекты, и могу с уверенностью сказать, что удовлетворительно проблема не решается одним запросом или UDF.
Решение есть, но оно вовсе не тривиальное.
← →
AlexLines (2005-10-16 13:23) [15]> Что за информация содержится в поле, где ищем: биография
> огурцов, милицейские протоколы о задержании кучи Ивановых
> и Петровых и т.д.
Вообще задача состоит в том, чтобы если пользователь набрал в строке поиска Иван* Александр* Григорьев*, то получил бы записи Иванов Александр Григорьевич, Иванову Александру Григорьевичу и т.д., однако не Иванов хороший человек, Александр Григорьевич тоже
← →
Anatoly Podgoretsky © (2005-10-16 13:25) [16]Не много ли хочешь от Парадокса? Решай это на клиенте.
← →
msguns © (2005-10-16 13:33) [17]>AlexLines (16.10.05 13:23) [15]
На вопрос о сути хранимой в поле поиска информации отвечать не будем принципиально ?
← →
AlexLines (2005-10-16 13:42) [18]
> На вопрос о сути хранимой в поле поиска информации отвечать
> не будем принципиально ?
В поле Memo размещены статьи из журнала. По ним и производится поиск
← →
AlexLines (2005-10-16 13:49) [19]
> Не много ли хочешь от Парадокса?
Почему много?
Страницы: 1 вся ветка
Форум: "Базы";
Текущий архив: 2005.11.27;
Скачать: [xml.tar.bz2];
Память: 0.49 MB
Время: 0.021 c