powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Oracle [игнор отключен] [закрыт для гостей] / Неполное сравнение значений столбцов 2ух таблиц, и замена совпавших значений
8 сообщений из 8, страница 1 из 1
Неполное сравнение значений столбцов 2ух таблиц, и замена совпавших значений
    #39626946
Sweet_Boy
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Добрый вечер, подскажите пожалуйста, не могу понять как сделать замену значений всего столбца после неполного сравнения 2ух таблиц.
Например, у меня есть таблица в которой указаны адреса, но где-то указано полное наименования типа(Улица Ленина, например), а где-то сокращенное(ул. Боткинская, например). Есть таблица с типами наименований, и их сокращением |Улица|ул.|, значений больше 100. Адресов больше 10000. Необходимо провести неполное сравнение столбцов адреса и полного наименования, и при совпадении заменить полное на сокращенное (было Проспект Просвещения, стало пр-т Просвещения).
...
Рейтинг: 0 / 0
Неполное сравнение значений столбцов 2ух таблиц, и замена совпавших значений
    #39626979
dmdmdm
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
"Неполное сравнение", ишь чего. "Машина, сделай за меня работу" это называется.

Строковые функции изучайте.

Никогда ими не занимался, так что банальный translate готовит множество открытий чудных.

Код: plsql
1.
2.
3.
4.
5.
6.
7.
8.
with t as
    ( select 'Улица' str from dual union all
       select 'Ул.' str from dual union all
       select 'ул.' str from dual union all
       select 'улеца' str from dual
     ) 
     
select t.str, translate(t.str, 'Улица', 'ул.') str2 from t     
...
Рейтинг: 0 / 0
Неполное сравнение значений столбцов 2ух таблиц, и замена совпавших значений
    #39627081
Фотография Elic
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
dmdmdm
Код: plsql
1.
translate(t.str, 'Улица', 'ул.')

Самообман или тонкий троллинг?
...
Рейтинг: 0 / 0
Неполное сравнение значений столбцов 2ух таблиц, и замена совпавших значений
    #39627094
dmdmdm
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Для меня толстый, для кого-то тонкий.
...
Рейтинг: 0 / 0
Неполное сравнение значений столбцов 2ух таблиц, и замена совпавших значений
    #39627228
Фотография Vladimir Filin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Sweet_Boy....Необходимо провести неполное сравнение столбцов адреса и полного наименования, и при совпадении ....
Делал на Oracle Text. Имелся полный справочник БТИ, где адрес в структурированном виде + топонимы в отдельном справочнике. Дополнил справочник топонимов ошибками их написания и их сокращениями. Далее, конкатинация полного адреса в строку + все варианты топонима и индексация Oracle Text-ом.
https://docs.oracle.com/cd/E11882_01/text.112/e24435/query.htm#BABGAIHJ
Только цифры префиксировал, т.к. он их выкидывает из поиска.
До Text-а сравнивали по отдельным полям адреса, соединяли результаты...работало долго и паршиво.
...
Рейтинг: 0 / 0
Неполное сравнение значений столбцов 2ух таблиц, и замена совпавших значений
    #39627229
Фотография Vladimir Filin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Sweet_Boy....было Проспект Просвещения, стало пр-т Просвещения
Хотя, может я задачу ТС не понял... Только для таких преобразований "Проспект" -> "пр-т" по справочнику, Oracle Text нахрен не нужен. Но это и не неполное сравнение данных столбцов тогда.
...
Рейтинг: 0 / 0
Неполное сравнение значений столбцов 2ух таблиц, и замена совпавших значений
    #39627408
Sweet_Boy
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Vladimir Filin,
Добрый день. Для простой замены одного или пары значений, например, я использовал регулярные запросы, а конкретно regexp_replace, но у меня имеется, но у меня для сравнения не пара, а больше 100, и мне интересно можно ли этот процесс автоматизировать, чтобы не по несколько заменять, а при сравнении, если в первом столбе содержатся значения второго, то это значение менялось на значение из третьего.
...
Рейтинг: 0 / 0
Неполное сравнение значений столбцов 2ух таблиц, и замена совпавших значений
    #39627548
Sweet_Boy
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Vladimir Filin,
Да, замена должна осуществляться по справочнику. Может я неправильно выразился насчет "неполного сравнения". Просто я представляю что мне нужно: если А%text% содержит B%text%, этот B%text% в A заменить на С%text%
...
Рейтинг: 0 / 0
8 сообщений из 8, страница 1 из 1
Форумы / Oracle [игнор отключен] [закрыт для гостей] / Неполное сравнение значений столбцов 2ух таблиц, и замена совпавших значений
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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