69700

Групування записів

Лекция

Информатика, кибернетика и программирование

Оператор SELECT дозволяє групувати значення, що повертаються. Наприклад, клієнт Іванов (C_NO=l) кілька разів замовляв у нас якийсь товар. Означає його номер зустрічається в таблиці ORDERS кілька разів. Інший клієнт також міг зробити декілька замовлень.

Украинкский

2014-10-08

25 KB

1 чел.

Тема 29: Групування  записів

Оператор SELECT дозволяє групувати значення, що повертаються. Наприклад, клієнт Іванов (C_NO=l) кілька разів замовляв у нас якийсь товар. Означає його номер зустрічається в таблиці ORDERS кілька разів. Інший клієнт також міг зробити декілька замовлень. Ми можемо згрупувати всі записи по полю C_NO (номер клієнта), а потім вивести суму замовлення кожного клієнта.

SELECT CLIENTS.FIO, SUM(ORDERS.AMOUNT) AS TOTALSUM

FROM CLIENTS, ORDERS

WHERE CLIENTS.C_NO = ORDERS.C_NO

GROUP BY ORDERS.C_NO;

Угрупування виконує оператор GROUP BY, який являетсячастью оператора SELECT. Оператора GROUP BY можна обмежити за допомогою HAVING. Цей оператор використовується для відбору рядків, GROUP BY, що повертаються. HAVING можна вважати аналогом WHERE, але тільки для GROUP BY:

HAVING   <умова>

Наприклад, нас цікавлять тільки клієнти, які замовили товарів на загальну суму, що перевищує 1000.

SELECT CLIENTS.FIO, SUM(ORDERS.AMOUNT) AS TOTALSUM ' FROM CLIENTS, ORDERS WHERE CLIENTS.C_NO = ORDERS.C_NO GROUP BY ORDERS.C_NO HAVING TOTALSUM > 10 00;

У цьому запиті ми використовували псевдонім стовпця TOTALSUM. B деяких серверах SQL для визначення псевдоніма не потрібно писати службове слово AS, а деякі вимагають застосування знаку рівності:

SUM(ORDERS.AMOUNT) TOTALSUM або TOTALSUM = SUM(ORDERS.AMOUNT).

13.2.10. Сортування записів

Поки ми не встановили первинний ключ, сортування нашої таблиці не виконується. Дані будуть відображені в порядку занесення їх в таблицю. Для сортування по полю C_NO результату виведення таблиці CLIENTS використовується наступний оператор (сама таблиця при цьому не сортується):

SELECT * FROM CLIENTS ORDER BY C_NO;


 

А также другие работы, которые могут Вас заинтересовать

2570. Измерение времени соударения упругих шаров 110 KB
  Цель работы: Измерение времени соударения упругих шаров, определение закона упругой силы, возникающей при соударении шаров. Соударение упругих шаров не является мгновенным. Соприкосновение шаров длится хотя и малый, но конечный промежуток времени, а силы, возникающие при ударе хотя и велики, но также конечны.
2571. Изучение взаимодействия тел при ударе 112.5 KB
  Цель работы: Изучить законы сохранения энергии и импульса; определить экспериментально работу деформации, коэффициент восстановления скорости, время и силу взаимодействия тел при ударе.