Таблица ReachableFrom
Таблица 12.2. Таблица ReachableFrom после одного прохода рекурсии
Source | Destination |
Portland | Orange County |
Portland | Charlotte |
Portland | Daytona Beach |
Orange County | Montgomery |
Charlotte | Memphis |
Memphis | Champaign |
Montgomery | Memphis |
Интересное начнется уже при втором проходе. Предложение WHERE (WHERE in. Destination = out. Source)означает, что просматриваются только те строки в которых поле Destination таблицы ReachableFrom равно полю Source таблиш FLIGHT. Для каждой такой строки берутся значения поля Source из ReachableFrom и пол Destination из FLIGHT, а затем в качестве новой строки добавляются в ReachableFrom. Результат этого прохода показан в табл. 12.3.