У меня есть база данных Oracle, которая содержит модель подключения, к которой я получаю доступ через терминал, используя sqlplus.
Данные структурированы аналогично тому, что показано ниже:
StreetName,Node1,Node2,Zone
Residential1, 10, 11, USA
Local1, 11, 12, USA
Local2, 12, 13, USA
.
.
.
Freeway1, 400, 401, USA
Обычно я извлекаю БД и анализирую ее на языке, подобном python, но поскольку данные часто обновляются и меняются, и для извлечения данных для python требуется много времени, я хотел бы выяснить, можете переместить этот процесс для непосредственного запуска, войдя в sqlplus.
Я пытаюсь найти способ написать запрос, который отслеживает узлы в базе данных, но я не уверен, что будет лучшим способом для этого, потому что я никогда не писал условный запрос, который повторяется так Я был бы признателен, если бы мог получить рекомендации по наилучшей практике.
Например, основываясь на данных, показанных выше, если бы я хотел взять запись 'Residential1' и проследить ее узлы, чтобы найти первое 'Автострада', к которой он подключен, я бы хотел написать запрос, который находит другие записи, подключенные к Node1 и Node2, а затем отслеживают связность для каждой записи, пока не достигнут записи, помеченной как «Автострада», и не вернут результат.
Теперь я хотел бы расширить это решение, чтобы сделать это, скажем, со всеми записями, помеченными как «Жилые» и тому подобное.
Является ли PL / SQL лучшим способом решения этой задачи, или обычные запросы способны эффективно выполнять эту задачу?