powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Oracle [игнор отключен] [закрыт для гостей] / Подскажите, как можно сделать кратко
4 сообщений из 4, страница 1 из 1
Подскажите, как можно сделать кратко
    #39267907
Задача: массив из Фамилий-Имен-Отчеств преобразовать к виду Фамилия И. О.
Нагородил логику из substr-ов и instr-ов, но не нравится.

Подозреваю, что сие можно сделать одной строкой аналитическими функциями. Поможете?

with t as (select 'Пупкин Василий Иоанович' n from dual union all
select 'Буль-Буль оглы Палад' from dual union all
select 'Клинтон Билл' from dual)

должно получиться:

Пупкин В. И.
Буль-Буль о. П.
Клинтон Б.
...
Рейтинг: 0 / 0
Подскажите, как можно сделать кратко
    #39267911
Фотография dbms_photoshop
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Стромпрстен,

в поиск

Осознай отличие от single row functions and analytic functions.
...
Рейтинг: 0 / 0
Подскажите, как можно сделать кратко
    #39267913
Стромпрстенодной строкой аналитическими функциями. с регулярками не попутал, случаем?
И как быть с небезысвестным Остапом Сулейман Берта Мария Бендер-Бейем ?
...
Рейтинг: 0 / 0
Подскажите, как можно сделать кратко
    #39267918
Добрый Э - Эх,

Попутал, конечно.
По ссылке выше нашел вполне подходящий вариант от orawish: regexp_replace(s,'( [А-Я]| [а-я]*)([^ ]*)','\1.')

Осталось разобраться, как оно работает :)
...
Рейтинг: 0 / 0
4 сообщений из 4, страница 1 из 1
Форумы / Oracle [игнор отключен] [закрыт для гостей] / Подскажите, как можно сделать кратко
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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