Я выполняю задание, в котором я создал три таблицы, а именно «Проект», «Деталь» и «Использование». Структура таблиц приведена ниже:
SQL> CREATE TABLE PROJECT
2 (
3 PNO VARCHAR2(5) PRIMARY KEY,
4 PNAME VARCHAR2(15) NOT NULL,
5 CITY VARCHAR2(15) NOT NULL
6 );
SQL> CREATE TABLE PART
2 (
3 PID VARCHAR2(5) PRIMARY KEY,
4 PNAME VARCHAR2(15) NOT NULL,
5 COLOR VARCHAR2(15) NOT NULL
6 );
SQL> CREATE TABLE USE
2 (
3 PNO VARCHAR2(5),
4 PID VARCHAR2(5),
5 QTY NUMBER CHECK(QTY >5 AND QTY<100),
6 FOREIGN KEY(PNO) REFERENCES PROJECT,
7 FOREIGN KEY(PID) REFERENCES PART,
8 PRIMARY KEY(PNO,PID)
9 );
Я хочу написать запрос, чтобы узнать название проекта, который использовал наибольшее количество продуктов.
Я могу написать следующий запрос, который возвращает количество деталей, используемых каждым проектом.
SQL> SELECT PNO, SUM(QTY)
2 FROM USE
3 GROUP BY PNO;
PNO SUM(QTY)
----- ----------
P4 205
P1 95
P2 95
P3 20