[SQL-closed] Разбить таблицу связанности на множества.

agaaaa

В упрощённом виде есть две таблицы.
IDs: одно поле int уникальное
Links: два поля, Aside и Bside
id1 и id2 - связанные, если существует цепочка пар в Links, которая из связывает.
например (Links)

Aside Bsize
1 2
2 3

1 и 3 - связаны
требуется получить все элементы, связанные с каким-то одним эл-том (включая самого себя упорядоченные по возрастанию

klyv

посмотри пример на рекурсивные CTE в Books Online.

agaaaa

Нашёл решение, не связанное с SQL

hwh2010

в Oracle есть конструкция Connect By, в Postgresql тоже вроде что-то подобное то ли есть, то ли собираются сделать. В MySQL вроде нету. Про другие СУБД не в курсе.
В стандартном SQL нет.
Если вдруг у тебя фактически длина путей не бывает больше трёх, то напиши join трёх копий таблицы.
Оставить комментарий
Имя или ник:
Комментарий: