Учебное пособие Для студентов университетов Специальностей «Информатика», «Прикладная математика»


 Выбрать из таблицы BOOKS информацию о количестве различных  жанров:  SELECT  COUNT(DISTINCT  GENRE)  FROM  BOOKS;  2



Pdf көрінісі
бет130/177
Дата15.02.2022
өлшемі2,58 Mb.
#25567
түріУчебное пособие
1   ...   126   127   128   129   130   131   132   133   ...   177
1.
 Выбрать из таблицы BOOKS информацию о количестве различных 
жанров: 
SELECT  COUNT(DISTINCT  GENRE)  FROM  BOOKS
2.
  Выбрать  из  таблицы BOOKS информацию  о  количестве,  суммар-
ной стоимости и максимальной стоимости имеющихся книг: 
SELECT  COUNT(CODE_BOOK), SUM(PRICE), MAX(PRICE)  
FROM BOOKS; 
3.
  Выбрать  из  таблицы BOOKS по  каждому  издательству  информа-
цию о количестве и суммарной стоимости изданных им книг, сгруппиро-
вав ее по жанрам: 
SELECT  PUBLISH_HOUSE, GENRE, COUNT(CODE_BOOK), 
SUM(PRICE) FROM  BOOKS  GROUP  BY  PUBLISH_HOUSE, 
GENRE;  
4.
 Выбрать из таблицы BOOKS информацию о количестве и средней 
стоимости  (округлив  значение  средней  стоимости  до  двух  знаков  после 
запятой) книг в тех жанрах, где количество различных названий книг не 
менее 2: 
 
146


 
SELECT  GENRE, COUNT(DISTINCT  TITLE), 
ROUND(AVG(PRICE), 2)  FROM  BOOKS  GROUP  BY  GENRE 
HAVING  COUNT(DISTINCT  TITLE) >= 2; 
5.
 Выбрать из таблицы BOOKS информацию о минимальной стоимо-
сти книг в жанре «Роман»: 
SELECT  MIN(PRICE)  FROM  BOOKS  WHERE  GENRE = 'Роман'; 
6.
 Выбрать из таблицы BOOKS информацию (фамилия автора, назва-
ние, цена) о самой дешевой книге в жанре «Роман»: 
SELECT  AUTHOR, TITLE, PRICE  FROM  BOOKS 
WHERE  PRICE = (SELECT  MIN(PRICE)  FROM  BOOKS  
WHERE  GENRE = 'Роман')  AND  GENRE = 'Роман'; 
7.
 Выбрать из таблицы BOOKS информацию (фамилия автора, назва-
ние,  жанр,  цена)  о  книгах,  имеющих  максимальную  стоимость  в  своем 
жанре: 
а) SELECT  AUTHOR, TITLE, GENRE, PRICE  FROM  BOOKS 
WHERE  (PRICE, GENRE)  IN  (SELECT  MAX(PRICE), GENRE  
FROM  BOOKS  GROUP  BY  GENRE); 
б) SELECT  AUTHOR, TITLE, BOOKS.GENRE, PRICE  FROM  
BOOKS, (SELECT  GENRE, MAX(PRICE)  МАКС  FROM  BOOKS   
GROUP BY GENRE) P1 
WHERE  PRICE = МАКС AND  BOOKS.GENRE = P1.GENRE; 
в) SELECT  AUTHOR, TITLE, GENRE, PRICE  FROM  BOOKS  P1 
WHERE  PRICE  =  (SELECT  MAX(PRICE)  FROM  BOOKS  
WHERE  BOOKS.GENRE = P1.GENRE); 
Третий  запрос  содержит  коррелированный  подзапрос.  Поскольку  в 
своем условии подзапрос содержит ссылку на столбец родительского за-
проса,  он  будет  выполняться  один  раз  для  каждой  строки,  извлекаемой 
родительским запросом. В первом и втором вариантах подзапрос не яв-
ляется коррелированным, он выполняется только один раз для родитель-
ского запроса. 
8.
 Выбрать из таблицы BOOKS информацию (фамилия автора, назва-
ние, цена) о книгах стоимостью больше средней стоимости книг: 
SELECT  AUTHOR, TITLE, PRICE  FROM  BOOKS  
WHERE  PRICE > (SELECT  AVG(PRICE)  FROM  BOOKS); 
 
147


 
9. 
Выбрать  из  таблицы BOOKS список  жанров,  по  которым  имеется 
наибольшее количество различных книг, с указанием количества книг: 
SELECT GENRE, COUNT(DISTINCT TITLE) FROM BOOKS 
GROUP BY GENRE HAVING COUNT(DISTINCT TITLE) = 
(SELECT MAX(COUNT(DISTINCT TITLE)) FROM BOOKS 
GROUP BY GENRE); 
10. 
Выбрать из таблицы BOOKS информацию о книгах (фамилия ав-
тора, название), относящихся к жанрам, по которым имеется наибольшее 
количество различных книг:  
SELECT AUTHOR, TITLE FROM BOOKS WHERE GENRE IN 
(SELECT GENRE FROM BOOKS  GROUP BY GENRE HAVING  
COUNT(DISTINCT TITLE) = 
(SELECT MAX(COUNT(DISTINCT TITLE)) FROM BOOKS 
GROUP BY GENRE)); 


Достарыңызбен бөлісу:
1   ...   126   127   128   129   130   131   132   133   ...   177




©emirsaba.org 2024
әкімшілігінің қараңыз

    Басты бет