Использование SQL Запросов - Использование вычисляемых полей
Использование вычисляемых полей На основании данных таблицы «Продажи» вычислите для каждого товара сумму денег, полученных за проданный товар (произведение цены на количество проданного товара), и сумму, на которую заказано товаров (произведение цены на количество заказанного товара), а также разность между ними: SELECT [Код товара], Цена, Заказано, Продано, Цена*Продано, Цена*3аказано, Цена*Заказано-Цена*Продано FROM Продажи Псевдонимы полей Задайте псевдонимы для вычисляемых полей в предыдущем запросе. SELECT [Код товара], Цена, Заказано, Продано, Цена*Продано AS [Сумма продажи], Цена*3аказано AS [Сумма заказа], Цена*Заказано-Цена*Продано AS [Разность] FROM Продажи Функции агрегирования В таблице «Продажи» подсчитайте количество записей в поле «Продано», минимальное и максимальное количество проданных товаров, общую сумму проданных товаров и среднее значение проданных товаров. SELECT COUNT(Продано) AS [Всего записей], МIN(Продано) AS min, МАХ(Продано) AS max, SUM(Продано) AS [Всего продано], AVG(Продано) AS [Среднее количество продаж] FROM Продажи Группировка данных Подсчитайте количество покупок товаров, сделанных каждым из клиентов. SELECT [Код клиента], SUM(Продано) AS [Количество покупок] FROM Продажи GROUP BY [Код клиента] В предыдущем запросе выберите только тех клиентов, которые сделали за один раз более 10 покупок, и упорядочьте результаты выборки в порядке возрастания: Язык SQL позволяет извлечь данные из нескольких таблиц. При этом выполняется операция соединения. Способы соединения: соединение равенства, соединение неравенства, внешние соединения. Для задания вида соединения используется предложение WHERE. Соединение равенства производится по общему для нескольких таблиц полю. Синтаксис: SELECT table1.field1, table2.field2 {, …, tableN.fieldN} FROM table1, table2 {, …, tableN} WHERE table1.common_field1= table2.common_field1 {AND table1.common_field2= table2.common_field2} При использовании внешнего соединения результат запроса будет содержать все записи одной из таблиц, даже в том случае, если в связанной с ней таблице отсутствуют совпадающие значения. Реализуется с помощью оператора OUTER JOIN: SELECT table1.field1, table2.field2 {, …, tableN.fieldN} FROM table1 LEFT | RIGHT | FULL {OUTER} JOIN table2 ON условие {LEFT | RIGHT | FULL {OUTER} JOIN table3 ON условие} LEFT – левое внешнее соединение, RIGHT – правое внешнее соединение, FULL – полное внешнее соединение. Подзапрос – запрос, помещенный внутри другого запроса.
SELECT {*| ALL | field1, field2, …, fieldN} FROM table1 { , table2, …, tableN} WHERE условие (SELECT {*| ALL | field1, field2, …, fieldN} FROM table1 { , table2, …, tableN} WHERE условие)
Запросы, включающие в себя несколько операторов SELECT, называются составными. Правила объединения запросов:
Читайте также:
|
