Помогите написать запрос.
От: nen777w  
Дата: 18.08.19 10:45
Оценка:
Есть таблица вида: ID_группы, ID_елемента
Например:
1, 1
1, 2
2, 2
2, 4
2, 5
2, 6
3, 7

Есть выборки из последовательности элементов, например: 1,2,5; 1,5,2; 1,2,4; 2,5,7;

Нужно проверить true/false для каждой из выборок что все пары рядом стоящих элементов принадлежат одной группе.
Например:
1,2,5 -> true; те 1 и 2 принадлежат одной группе 1 (из 1->2 мы можем попасть через 1ю группу); и 2 и 5 пренадлежат одной группе 2 (из 2->5 мы можем попасть через группу 2)
1,5,2 -> false; А вот тут уже мы не можем попасть 1->5 так как группы у них разные.
1,2,4; -> true; 1 и 2 в группе 1, 2 и 4 в группе 2
2,5,7; -> false; 2 и 5 в группе 2, 5 и 7 не имеют общей группы
Отредактировано 18.08.2019 10:57 nen777w . Предыдущая версия . Еще …
Отредактировано 18.08.2019 10:55 nen777w . Предыдущая версия .
Re: Помогите написать запрос.
От: BlackEric http://black-eric.lj.ru
Дата: 19.08.19 08:20
Оценка:
Здравствуйте, nen777w, Вы писали:

Это хранимкой. В один запрос, наверное, не получится.
СУБД какая?
https://github.com/BlackEric001
Re[2]: Помогите написать запрос.
От: nen777w  
Дата: 20.08.19 11:45
Оценка:
Здравствуйте, BlackEric, Вы писали:

BE>Это хранимкой. В один запрос, наверное, не получится.

BE>СУБД какая?

Прошу прощения, забыл указать. PostgreSQL.
Тут уже помогли: https://stackoverflow.com/questions/57547397/how-to-check-the-possibility-of-groups-union-in-a-sequence-order/57555802#57555802
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.