ВУЗ:
Составители:
Рубрика:
104
Пример 4.12. Определить дату продажи заказа с максимальной стоимо-
стью. Вывести дату продажи и стоимость.
SELECT SaleDate,ItemsTotal FROM orders
WHERE ItemsTotal=(SELECT max(ItemsTotal) FROM orders)
Пример 4.13. Определить даты оформления заказов, стоимость которых
превысила среднее значение, и указать для этих заказов превышение над сред-
ним уровнем.
SELECT OrderNo, SaleDate, ItemsTotal,
ItemsTotal-(SELECT avg(ItemsTotal) FROM orders)
FROM orders
WHERE ItemsTotal>(SELECT avg(ItemsTotal) FROM orders)
Пример 4.14. Вывести имя, фамилию, табельный номер сотрудника,
оформившего заказ максимальной стоимости, и стоимость этого заказа.
Так как требуемые сведения находятся в разных таблицах, то для получе-
ния результата надо сформировать запрос, использующий соединение данных
из двух таблиц. Кроме того, в запрос следует добавить подзапрос, определяю-
щий максимальную стоимость заказа.
SELECT FirstName,LastName,EmpNo,ItemsTotal
FROM employee e join orders o
ON E.EmpNo=O.EmpNo AND
ItemsTotal=(SELECT max(ItemsTotal) FROM orders)
4.6.3.Подзапросы, возвращающие множество значений
Подзапросы могут возвращать не одно, а множество значений. В таких
случаях данные помещаются во временную таблицу, которая может использо-
ваться только в том месте, где она появилась в подзапросе.
Если требуется сравнить полученные значения в предложениях
WHERE
или
HAVING, то используют операции IN, NOT IN, ALL, SOME, ANY, EXISTS, NOT
EXISTS
, которые работают с множеством значений.
{WHERE|HAVING} выражение [NOT] IN (подзапрос);
{WHERE|HAVING} выражение
оператор_сравнения {ALL|SOME|ANY}(подзапрос);
{WHERE|HAVING} [NOT] EXISTS (подзапрос);
Пример 4.12. Определить дату продажи заказа с максимальной стоимо-
стью. Вывести дату продажи и стоимость.
SELECT SaleDate,ItemsTotal FROM orders
WHERE ItemsTotal=(SELECT max(ItemsTotal) FROM orders)
Пример 4.13. Определить даты оформления заказов, стоимость которых
превысила среднее значение, и указать для этих заказов превышение над сред-
ним уровнем.
SELECT OrderNo, SaleDate, ItemsTotal,
ItemsTotal-(SELECT avg(ItemsTotal) FROM orders)
FROM orders
WHERE ItemsTotal>(SELECT avg(ItemsTotal) FROM orders)
Пример 4.14. Вывести имя, фамилию, табельный номер сотрудника,
оформившего заказ максимальной стоимости, и стоимость этого заказа.
Так как требуемые сведения находятся в разных таблицах, то для получе-
ния результата надо сформировать запрос, использующий соединение данных
из двух таблиц. Кроме того, в запрос следует добавить подзапрос, определяю-
щий максимальную стоимость заказа.
SELECT FirstName,LastName,EmpNo,ItemsTotal
FROM employee e join orders o
ON E.EmpNo=O.EmpNo AND
ItemsTotal=(SELECT max(ItemsTotal) FROM orders)
4.6.3.Подзапросы, возвращающие множество значений
Подзапросы могут возвращать не одно, а множество значений. В таких
случаях данные помещаются во временную таблицу, которая может использо-
ваться только в том месте, где она появилась в подзапросе.
Если требуется сравнить полученные значения в предложениях WHERE
или HAVING, то используют операции IN, NOT IN, ALL, SOME, ANY, EXISTS, NOT
EXISTS, которые работают с множеством значений.
{WHERE|HAVING} выражение [NOT] IN (подзапрос);
{WHERE|HAVING} выражение
оператор_сравнения {ALL|SOME|ANY}(подзапрос);
{WHERE|HAVING} [NOT] EXISTS (подзапрос);
104
Страницы
- « первая
- ‹ предыдущая
- …
- 102
- 103
- 104
- 105
- 106
- …
- следующая ›
- последняя »
