Запросы
Я заполнил таблицы
исходными данными и провел несколько
запросов.
Следующий запрос
предназначен для того, чтобы выдавать
список всех брендов с количеством
товаров по категориям:
SELECT
pbrand,
categories.pcname,
sum(pquantity)
FROM
products,
categories
WHERE
products.pcategory_id
=
categories.pcategory_id
GROUP
by
pid;
Однако в исходном
виде он не группирует товары по категориям:
|
|
|
pbrand |
pcname |
sum(pquantity) |
Samsung |
Чайники |
3 |
Samsung |
Чайники |
5 |
Black
mesa |
Микроволновки |
7 |
Black
mesa |
Телевизоры |
9 |
Простой заменой pidна pcnameв последней строке
можно достичь желаемого:
|
|
|
pbrand |
pcname |
sum(pquantity) |
Black
mesa |
Микроволновки |
7 |
Black
mesa |
Телевизоры |
9 |
Samsung |
Чайники |
8 |
Следующий запрос
должен выводить список всех продавцов
с числом заказов у каждого, что он успешно
и делает:
SELECT
sname,
(select
count(orders.sid)
FROM
orders
WHERE
orders.sid
=
salespeople.sid)
FROM
salespeople
GROUP
BY
sname;
Так выглядит результат
запроса:
|
|
sname |
(select
count(orders.sid)
FROM
orders
WHERE
orders.sid = salespeople.sid) |
Алиса
Тырь |
0 |
Иван
Жадов |
2 |
Максим
Хитров |
1 |
Федор
Захапов |
2 |
Последний запрос
выводит список заказов на сегодняшний
день.
SELECT
amt,
pbrand,
pname FROM
orders,
products
WHERE
odate =
DATE
(now())
and
orders.pid
=
products.pid
Предсказуемо, таблица
результата пуста.
Вывод
В результате
выполнения лабораторной работы я создал
базу данных с двумя новыми таблицами,
использующими систему внешних ключей,
а также еще раз проверил их работу. Кроме
того, я произвел несколько новых запросов.