Гость
Форумы / Oracle [игнор отключен] [закрыт для гостей] / Поиск по неизвестному количеству шаблонов условием like / 8 сообщений из 8, страница 1 из 1
12.02.2021, 14:59
    #40044855
Er4SuS
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Поиск по неизвестному количеству шаблонов условием like
Доброго времени суток!
Есть таблица со списком шаблонов и след значениями:
1) '%нет%улица%'
2) '%отсутствует%'
3)...
n) '%без%ул%'
Есть таблица с адресами клиентов, где есть колонка "улица строкой".
Нужно сделать алгоритм, который бы проверял совпадение значения улицы строкой с шаблоном, что-то типа:
street_str like '%нет%улица%'
or street_str like '%отсутствует%'
or street_str like...

Проблема в том, что количество шаблонов заранее неизвестно, да и даже если бы было известно, то при добавлении шаблона в таблицу нужно будет переписывать запрос. Есть ли решение для подобных случаев? Процедурное решение тоже подойдет.
...
Рейтинг: 0 / 0
12.02.2021, 15:04
    #40044861
Elic
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Поиск по неизвестному количеству шаблонов условием like
Er4SuS
Есть ли решение для подобных случаев?
Код: plsql
1.
exists
...
Рейтинг: 0 / 0
12.02.2021, 15:10
    #40044864
Dimitry Sibiryakov
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Поиск по неизвестному количеству шаблонов условием like
Er4SuSЕсть ли решение для подобных случаев?

join on a.f like b.f
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
12.02.2021, 15:26
    #40044876
Er4SuS
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Поиск по неизвестному количеству шаблонов условием like
Elic,

Exists на равно подойдет, но не на like
...
Рейтинг: 0 / 0
12.02.2021, 15:27
    #40044877
Er4SuS
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Поиск по неизвестному количеству шаблонов условием like
Dimitry Sibiryakov,

Попробую, спасибо)
...
Рейтинг: 0 / 0
12.02.2021, 16:37
    #40044895
Stax
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Поиск по неизвестному количеству шаблонов условием like
Er4SuS
Elic,

Exists на равно подойдет, но не на like


Код: plsql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
SQL> ed
Wrote file afiedt.buf

  1  with t as (
  2  select ' 1) Інет  + улица' fio from dual union all
  3  select ' 2) Інет отсутствует' fio from dual union all
  4  select ' 3) Інет Ок!' fio from dual)
  5  ,l as (
  6  select '%нет%улица%' s from dual union all
  7  select '%отсутствует%' s from dual union all
  8  select '%...%' s from dual)
  9  select * from t
 10*  where exists (select 1 from l where fio like s)
SQL> /

FIO
--------------------
 1) Інет  + улица
 2) Інет отсутствует

SQL>



.....
stax
...
Рейтинг: 0 / 0
12.02.2021, 16:55
    #40044901
Elic
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Поиск по неизвестному количеству шаблонов условием like
Dimitry Sibiryakov
join on a.f like b.f
Может умножать.
...
Рейтинг: 0 / 0
12.02.2021, 17:07
    #40044905
Dimitry Sibiryakov
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Поиск по неизвестному количеству шаблонов условием like
ElicМожет умножать.

Что тоже годится для некоторых задач. Впрочем, я подозреваю, что аффтар хочет эту проверку
запихнуть в check constraint или накрайняк триггер с выбросом исключения если шаблон порван.
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
Форумы / Oracle [игнор отключен] [закрыт для гостей] / Поиск по неизвестному количеству шаблонов условием like / 8 сообщений из 8, страница 1 из 1
Целевая тема:
Создать новую тему:
Автор:
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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