powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / PostgreSQL [игнор отключен] [закрыт для гостей] / Помощь в запросе
5 сообщений из 5, страница 1 из 1
Помощь в запросе
    #39199470
Oriaraniar
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Добрый день.
Подскажите, как правильно составить запрос.
Есть таблица, в которой есть идентификатор и стринговое поле по типу "1111111111,222222222,3333333"
Задача найти пересечение полей, в которых есть совпадения любого из элементов стринга и вывести их.
Как саму строчку в таблицу преобразовать, я нашел.
unnest(string_to_array('2300000000168791670,2300000000168792341,2300000000168793431,2300000000168794394,2300000000168793446,2300000000168795667',','))
Но вот дальше пока ступор. Подскажите, если не прямое решение, то хотя б в какую сторону копать подобные запросы?
...
Рейтинг: 0 / 0
Помощь в запросе
    #39199494
Alexius
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Oriaraniar,

после приведения к массиву unnest в простых случаях (если я правильно понял, и тут поиск по совпадению элемента) делать не нужно. см. array operators .
...
Рейтинг: 0 / 0
Помощь в запросе
    #39199684
Oriaraniar
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Alexius,

Либо я не понял Вас, либо Вы меня.

У меня есть таблица. Тысяч 10 строк.
В каждой строке есть и идентификатор и вот такую текстовую строку.
Мне нужно в результате запроса получить таблицу формата:

Id1 | Id2
Id1 | Id3
Id2 | Id4

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

Если бы там просто строки с единичным элементом были, к примеру, я б сджойнил таблицу саму на себя по совпадению строк.
А там набор, причём порядок их не гарантирован. И что с чем соединять, понять пока не могу.
...
Рейтинг: 0 / 0
Помощь в запросе
    #39199774
Oleg Bartunov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
...
Рейтинг: 0 / 0
Помощь в запросе
    #39199826
qwwq
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
OriaraniarAlexius,

Либо я не понял Вас, либо Вы меня.
<>

по ссылке:
Код: plaintext
&& 	overlap (have elements in common) 	ARRAY[1,4,3] && ARRAY[2,1] 	t

-- какая из букв в данной таблице операторов по ссылке вам не понятна?


т.е.
Код: sql
1.
.... FROM t AS t1 JOIN t AS t2 ON string_to_array(t1.f) && string_to_array(t2.f)


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


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