|
0 / 0 / 0
Регистрация: 27.02.2016
Сообщений: 42
|
|
Связи: человек1 связан с человек2, --в свою очередь человек2 связан с человек320.07.2016, 14:27. Показов 1349. Ответов 9
Метки нет (Все метки)
Ребятки всем доброго времени суток.
Вопрос в следующем. --Есть бд со связями (пример во вложении). Как можно осуществить следующее: вывод всех связных людей по запросу. --Если человек1 связан с человек2, --в свою очередь человек2 связан с человек3, то в итоге при запросе связей у человек1 в списке должны отобразится как человек2, так и человек3. (т.е. если люди связаны через нескольких посредников, то они связаны и друг с другом)
0
|
|
| 20.07.2016, 14:27 | |
|
Ответы с готовыми решениями:
9
С чем связан баг |
|
26825 / 14505 / 3192
Регистрация: 28.04.2012
Сообщений: 15,782
|
|
| 21.07.2016, 20:28 | |
|
При такой постановке вопроса мало шансов получить ответ. Нет сведений о типе связей, хотя бы описательно. Не ясно какие связи могут быть, какой граф они порождают. Что это дерево, лес, специфический граф, нейронная сеть? Я не думаю, что есть универсальный и к тому же эффективный метод построения любой сети по данным парных связей. Слишком разнятся свойства, чтобы можно было легко свести в один метод.
Угадать тип связей по Вашему примеру просто невозможно по двум записям. Если бы Вы привели пример на реальных данных и показали, что в должно получиться в результате, то можно было бы попробовать
1
|
|
|
шапоклякистка 8-го дня
|
|
| 22.07.2016, 04:16 | |
Сообщение было отмечено Людовик как решение
Решение
О, наконец-то развлечение! *потирает лапки*
Выполнить запрос "очистка", затем по 1 разу запросы 1 и 1а, затем запросы 2 и 2а выполнять по очереди до тех пор, пока оба они, выполненные подряд, не скажут, что "измненено 0 записей". После этого в поле тмп таблицы таб будут перечислены через ; номера всех чуваков, с которыми связан данный чувак. При условии, что перечисление займет не больше 255 символов
2
|
|
|
шапоклякистка 8-го дня
|
|
| 22.07.2016, 04:19 | |
|
1
|
|
|
0 / 0 / 0
Регистрация: 27.02.2016
Сообщений: 42
|
|
| 22.07.2016, 11:08 [ТС] | |
|
mobile, согласна, мало данных даю. Сама просто в графах не разбираюсь. Пыталась как то делать связный граф, но он не дает полного ответа.
Добавлено через 33 секунды texnik-san, Спасибо огромное, то что вы предложили на данный момент и в данной ситуации идеально
0
|
|
|
26825 / 14505 / 3192
Регистрация: 28.04.2012
Сообщений: 15,782
|
|
| 22.07.2016, 11:24 | |
Сообщение было отмечено Людовик как решение
Решение
Ну тогда и я дам решение :-). С дополнительной таблицей, а не полем. Смотрите форму Form1 и процедуру AddLinked в Module1.
2
|
|
|
0 / 0 / 0
Регистрация: 27.02.2016
Сообщений: 42
|
|
| 22.07.2016, 18:09 [ТС] | |
|
mobile, шикарное решение проблемы!!! Слов благодарности у меня не хватит
0
|
|
|
26825 / 14505 / 3192
Регистрация: 28.04.2012
Сообщений: 15,782
|
|
| 23.07.2016, 09:39 | |
Сообщение было отмечено Людовик как решение
Решение
Должен признаться, что решение texnik-san значительно быстрее моего. Поэтому создал процедуру выполняющую алгоритм texnik-san плюс перенос данных в таблицу попарных связей tblLinked. В форме, по нажатию кнопки "Обновить все связи" выполняется процедура TehnikSunAlgorithm.
2
|
|
|
шапоклякистка 8-го дня
|
|
| 23.07.2016, 10:55 | |
|
Ой
А я еще не успела даже просмотреть ваше решение ![]() Зато, пока в фоновом режиме думала над задачей, пришло в голову, что нет необходиомсти хранить полный список всех ID всех, кто связан с даным человеком. Достаточно хранить один, минимальный. Связанные между собой люди образуют закрытый кластер. Кластер однозначно характеризуемтся минимальным элементом. Если в процессе перебора обнаружатся связанные между собой люди с разными номерами кластеров - кластеры нужно просто объединить (заменить бОльший номер на меньший). Рализовать пока не успела
1
|
|
|
1318 / 536 / 112
Регистрация: 29.03.2016
Сообщений: 1,293
|
|
| 24.07.2016, 01:01 | |
Сообщение было отмечено Людовик как решение
Решение
Для коллекции:
2
|
|
| 24.07.2016, 01:01 | |
|
Помогаю со студенческими работами здесь
10
WMI & C++ (связан и с делфи) Вирус связан с командной строкой char_t и как он связан с оперативкой? С чем именно связан поток stdin? Ощибка связан с ADO, я так думаю))) Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
SDL3 для Web (WebAssembly): Обработчик клика мыши в браузере ПК и касания экрана в браузере на мобильном устройстве
8Observer8 02.02.2026
Содержание блога
Для начала пошагово создадим рабочий пример для подготовки к экспериментам в браузере ПК и в браузере мобильного устройства. Потом напишем обработчик клика мыши и обработчик. . .
|
Философия технологии
iceja 01.02.2026
На мой взгляд у человека в технических проектах остается роль генерального директора. Все остальное нейронки делают уже лучше человека. Они не могут нести предпринимательские риски, не могут. . .
|
SDL3 для Web (WebAssembly): Вывод текста со шрифтом TTF с помощью SDL3_ttf
8Observer8 01.02.2026
Содержание блога
В этой пошаговой инструкции создадим с нуля веб-приложение, которое выводит текст в окне браузера. Запустим на Android на локальном сервере. Загрузим Release на бесплатный. . .
|
SDL3 для Web (WebAssembly): Сборка C/C++ проекта из консоли
8Observer8 30.01.2026
Содержание блога
Если вы откроете примеры для начинающих на официальном репозитории SDL3 в папке: examples, то вы увидите, что все примеры используют следующие четыре обязательные функции, а. . .
|
|
SDL3 для Web (WebAssembly): Установка Emscripten SDK (emsdk) и CMake для сборки C и C++ приложений в Wasm
8Observer8 30.01.2026
Содержание блога
Для того чтобы скачать Emscripten SDK (emsdk) необходимо сначало скачать и уставить Git: Install for Windows. Следуйте стандартной процедуре установки Git через установщик. . . .
|
SDL3 для Android: Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 29.01.2026
Содержание блога
Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами. Версия v3 была полностью переписана на Си, в. . .
|
Инструменты COM: Сохранение данный из VARIANT в файл и загрузка из файла в VARIANT
bedvit 28.01.2026
Сохранение базовых типов COM и массивов (одномерных или двухмерных) любой вложенности (деревья) в файл, с возможностью выбора алгоритмов сжатия и шифрования.
Часть библиотеки BedvitCOM
Использованы. . .
|
SDL3 для Android: Загрузка PNG с альфа-каналом с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 28.01.2026
Содержание блога
SDL3 имеет собственные средства для загрузки и отображения PNG-файлов с альфа-каналом и базовой работы с ними. В этой инструкции используется функция SDL_LoadPNG(), которая. . .
|