Доброго времени суток! Помогите, пожалуйста, решить задачку

Пусть заданы отношения:

Категория(no, name),
где no – номер категории покупателя, name – название категории;

Покупатель(id, fio, no),
где no – номер категории, id – идентификатор покупателя, fio – ФИО покупателя;

Товар(kod, name, price),
где kod – идентификатор товара, name – название товара, price – цена товара.

Покупка(kod, id, count),
где id – идентификатор покупателя, kod – идентификатор товара, count – количество товара.

Задание: Построить выражение реляционного исчисления, операцию реляционной алгебры и оператор SELECT (SQL) для запроса:
«Требуется построить список физических лиц (Категория.name=’Физическое лицо’), указав фамилии покупателей (fio), купивших товар, а также - название товара, их цену и количество»

@темы: Вопрос, База данных, Access, MS SQL

Комментарии
29.05.2013 в 08:07

alhames.ru
SELECT customer.fio, product.name, product.price, purchase.count
FROM purchase
JOIN customer ON customer.id = purchase.id
JOIN product ON product.kod = purchase.kod
JOIN category ON category.no = customer.no
WHERE category.name = 'Физическое лицо'

Надеюсь идею поняли, а не просто скопируете запрос :)
29.05.2013 в 08:30

alhames, примерно поняла ) Спасибо огромное!
а можно еще выражение реляционного исчисления и операцию реляционной алгебры?
29.05.2013 в 08:38

alhames.ru
а можно еще выражение реляционного исчисления и операцию реляционной алгебры?
Можно, но я не помню что это =) Поясните - может смогу помочь..
29.05.2013 в 09:54

alhames, операция реляционной алгебры - это проекция, а выражение имеет вид:
целевой список WHERE правильно построенная формула
29.05.2013 в 12:55

alhames.ru
Мне это мало помогло) Учитывая то что на курсе баз данных я был только на первой паре и экзамене))
Попробуйте сами составить - а я пойму что не так и поправлю.
29.05.2013 в 23:14

alhames,
выражение: customer.fio, product.name, product.price, purchase.count WHERE EXISTS category(category.name='Физическое лицо' AND ( )) /*а что даже не представляю правильно построенной формуле писать*/
a алгебра думаю так: R=П{L}() где L=(customer.fio, product.name, product.price, purchase.count) /*а что в скобках тоже понятия не имею*/
31.05.2013 в 00:51

alhames.ru
lulushkina, боюсь в этом я вам врятли помогу.. и зачем вообще эта муть нужна..
31.05.2013 в 12:37

alhames, согласна с Вами
Спасибо большое, что помогли! : )