Граф в реляционной алгебре - PullRequest
0 голосов
/ 13 апреля 2019

Мне нужно запросить количество квартир, где все договора аренды подписаны жителями одной и той же национальности

Я пробовал что-то вроде этого:

π numberapartments
y nationality; numberapartments<--Count(a_id)

И мне тоже нужны где-то соединения, я не знаю.

Как я могу сделать этот запрос?

Спасибо.

Схему можно найти здесь

1 Ответ

2 голосов
/ 14 апреля 2019

Вот несколько вопросов, которые помогут вам составить такой запрос, как эта домашняя работа.

Когда вы даете таблицам, говорите точно, что строка говорит о бизнес-ситуации в терминах значений столбцов, когда она находится в таблице. Также при описании результата запроса.

Что такое запрос, возвращающий строки, где

  1. арендатор O снимает квартиру A с даты S до даты E? Зачем?

  2. O арендует A от даты к дате? Зачем?

  3. О арендуете? Зачем?

  4. O из нации N арендует A? Зачем?

  5. арендатор из N арендует A? Зачем?

  6. C = количество наций, где один арендатор арендует A? Зачем?

  7. C = количество наций, где один арендатор арендует A и C = 1? Зачем?

  8. a # = количество наций, где один из арендаторов арендует A & что # = 1? Зачем?

  9. (количество наций, где один арендатор арендует A) = 1? Зачем?

Какие строки в

  1. аренда?

  2. Occupant?

  3. результат вашего желаемого запроса? Зачем?

Реляционные запросы.

На самом деле нет необходимости использовать подсчет или группировку для написания вашего запроса. Такие запросы, имеющие вид «строки, где… все…», обычно могут быть написаны с использованием (некоторый вариант) реляционного деления или связанных идиом.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...