Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / PostgreSQL [игнор отключен] [закрыт для гостей] / Запрос с regex / 5 сообщений из 5, страница 1 из 1
12.12.2014, 17:44:41
    #38832833
andrej11
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Запрос с regex
Всем доброе время суток.
Есть таблица с информацией. В столбце Info находятся номера "Рххх"

IdInfo1 text P1232 text text text P234 text P7863 text 4 text P123 text text

Строки с номерами находятся без проблем:

Код: plsql
1.
2.
3.
SELECT a.id
FROM tabele a
WHERE a.info ~ E'P[0-9][0-9][0-9]';


Id124

Проблема заключается в следующем: Как выдать только номера?
Например:

Id Info1 P1232 P234 P7864 P123

Заранее спасибо за любую информацию.
...
Рейтинг: 0 / 0
12.12.2014, 17:54:11
    #38832839
JeStone
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Запрос с regex
andrej11,
Попробуйте regexp_matches
...
Рейтинг: 0 / 0
15.12.2014, 16:39:48
    #38834344
andrej11
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Запрос с regex
JeStoneandrej11,
Попробуйте regexp_matches

Код: plsql
1.
SELECT a.id, regexp_matches(a.info, 'P[0-9][0-9][0-9]')


Выведутся строки только с 1 номером:
id info1{P123}2{P234}4{P123}

С параметром 'g':
Код: plsql
1.
SELECT a.id, regexp_matches(a.info, 'P[0-9][0-9][0-9]', 'g')


Будут показаны все номера, но только в новых строках.
id info1{P123}2{P234}2{P786}4{P123}

Как выдать все номера, без дополнительных строк??? Т.е. если в одной строке находятся несколько номеров, то и выдать нужно все номера в одной строке.
...
Рейтинг: 0 / 0
15.12.2014, 17:10:49
    #38834392
Лопата
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Запрос с regex
andrej11,

помедитируйте на тему
Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
9.
WITH tabele(id,info) AS 
(values
(1,'	text P123')
,(2,'	text text text P234 text P786')
,(3,'	text')
,(4,'	text P123 text text ')
)
SELECT a.id, ARRAY(SELECT unnest(regexp_matches(a.info, 'P[0-9][0-9][0-9]', 'g'))) as info_arr
FROM tabele a
...
Рейтинг: 0 / 0
15.12.2014, 18:13:13
    #38834446
andrej11
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Запрос с regex
лопатаandrej11,

помедитируйте на тему


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


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