Opiszę sytuację na przykładzie:

Mam jedną tabelę w której zapisane mam ID klienta i jego odległość do każdego hotelu w kraju.
W drugiej tabeli posiadam ID hotelu, oraz ilość wolnych pokoi.

Potrzebuję się dowiedzieć w jaki sposób zwrócić wyniki w których uzyskam parę ID_klienta - ID_hotelu, dla których klient będzie miał do pokonania najkrótszą drogę.
Należy uwzględnić to, iż każdy hotel ma ograniczoną liczbę pokoi, dlatego klienci dla których braknie miejsc muszą być skierowani do innego możliwie najbliższego hotelu.
Każdy klient ma ten sam priorytet, więc kolejność przyznawania pokoi jest nieistotna.