Предварително държа да отбележа че хич ме няма в тази област.
На теория да кажем имаме база данни от 3 таблици, чиято цел е да държи инфо за даване на апартаменти, коли, каки или каквото друго се сетите под наем. Примерно:
Апартаменти
- ID
- адрес
- кв.м.
Клиенти
- ID
- Име
- Фамилия
Поръчки
- ID
- Клиент_ID
- Апартамент_ID
- начало на наем (дата)
- край на наем (дата)
На пръв поглед - възможно най-простата М:N структура. Трите ID-та като Primary Keys, Клиент_ID и Апартамент_ID като Foreign Keys, останалото ясно. Да кажем обаче че в тази БД се правят заявки само върху наемите - т.е. от днес до другиден примерно търсим свободни апартаменти. В случая се получава малко кофти, понеже в третата таблица имаме 3 полета с индекси и 2 полета без, като търсим точно според тези без индекси.
Да приемем и че базата е доста голяма. В задачката се пита как да организираме цялата работа така че да направим възможно най-бързото търсене. Т.е. оставяме всичко така както си е, слагаме индекси и на последните две полета, или правим други магически трикове?
Отбелязвам и че не става въпрос за домашно или курсова работа, просто ми е любопитно какво е мнението на човек който е по-навътре в нещата