Гость
Форумы / FoxPro, Visual FoxPro [игнор отключен] [закрыт для гостей] / Помогите с поиском / 3 сообщений из 3, страница 1 из 1
26.01.2016, 08:52
    #39155229
Hunter099
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Помогите с поиском
Привет всем.
Есть несколько строк (записей) примерно такого вида

21118, 0704, 5689, 1687,
5741, 2111, 2047,
8712, 1118, 5741,

Когда в sql задаю условие "%2111%" , то в отбор попадают строки с 21118 и 2111 и соответственно при условии "%1118%" результат 21118 и 1118.
Что нужно сделать чтобы из результата убрать лишние строки со значением 21118? И возможно ли это?
...
Рейтинг: 0 / 0
26.01.2016, 11:33
    #39155352
ВладимирМ
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Помогите с поиском
Добавить разделители в начало и конец для однозначной идентификации фрагмента

Код: sql
1.
2.
3.
select *
from MyTable
where "," + ChrTran(MyTable.MyField," ","") + "," like "%,2111,%"



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

По поводу оптимизации (скорости выполнения) можно не переживать, поскольку поиск фрагмента строки "по определению" не оптимизируемая операция. Т.е. хуже не будет
...
Рейтинг: 0 / 0
26.01.2016, 11:41
    #39155364
Hunter099
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Помогите с поиском
to ВладимирМ
Спасибо. То что нужно
...
Рейтинг: 0 / 0
Форумы / FoxPro, Visual FoxPro [игнор отключен] [закрыт для гостей] / Помогите с поиском / 3 сообщений из 3, страница 1 из 1
Целевая тема:
Создать новую тему:
Автор:
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]