SQL SUM () и COUNT () с использованием переменной
Функции SUM () и COUNT ()
Сумма значений поля или столбца таблицы SQL, созданная с помощью функции SQL SUM (), может храниться в переменной или временном столбце, называемом псевдонимом. Тот же подход можно использовать и с функцией SQL COUNT ().
Пример:
Чтобы получить СУММ общего количества записей в таблице «клиент», можно использовать следующий оператор SQL:
Образец таблицы: клиент
Код SQL:
SELECT SUM(mycount)
FROM(SELECT COUNT( * ) AS mycount
FROM customer);
Выход:
СУММА (MYCOUNT) ------------ 25
SQL SUM () и COUNT () с внутренним объединением
В следующем примере мы обсудили, как функции SQL SUM и SQL COUNT с предложением GROUP BY выполняют соединение с оператором SQL INNER JOIN. Данные из подзапроса могут храниться во временной таблице или псевдониме.
Данные этих временных таблиц могут использоваться для манипулирования данными другой таблицы. Эти две таблицы можно объединить самостоятельно и вернуть результат.
Пример:
Получить (1) данные «agent_code» и «agent_name» из таблицы «customer» и (2) «mycount» и «mysum» из псевдонима cus, сгенерированные из таблицы «customer» при следующих условиях:
1. «mycount» и «mysum» будут происходить от псевдонима cus,
2. псевдоним 'cus' будет сгруппирован на основе кода_агента,
3. клиент и псевдоним 'cus' будут внутренне объединены на основе того же кода агента,
можно использовать следующий оператор SQL:
Образец таблицы: клиент
Пример таблицы: агенты
Код SQL:
SELECT ag.agent_code, ag.agent_name,cus.mycount,cus.mySUM
FROM agents ag
INNER JOIN (
SELECT agent_code,COUNT(*) AS mycount,
SUM(opening_amt) AS mySUM
FROM Customer
GROUP BY agent_code) cus
ON cus.agent_code=ag.agent_code;
Выход:
AGENT_CODE AGENT_NAME MYCOUNT MYSUM ---------- ---------------------------------------- ---------- ---------- А002 Мукеш 3 22000 A004 Иван 3 25000 A007 Рамасундар 2 16000 A009 Бенджамин 1 6000 A011 Рави Кумар 1 5000 A012 Lucida 1 5000 A010 Santakumar 3 22000 A001 Subbarao 1 8000 A008 Alford 3 13000 A006 McDen 2 8000 A005 Андерсон 3 19000 A003 Alex 2 12000
Примечание. Выводы указанного оператора SQL, показанного здесь, взяты с использованием Oracle Database 10g Express Edition.
Вот слайд-презентация всех агрегатных функций.
Упражнения по SQL
- Упражнения по SQL, практика, решение
- SQL Получить данные из таблиц [33 Упражнения]
- Булевы и реляционные операторы SQL [12 упражнений]
- Подстановочные знаки SQL и специальные операторы [22 упражнения]
- Агрегатные функции SQL [25 упражнений]
- Вывод запроса форматирования SQL [10 упражнений]
- SQL-запросы к нескольким таблицам [7 упражнений]
- ФИЛЬТРАЦИЯ И СОРТИРОВКА в базе данных персонала [38 упражнений]
- SQL СОЕДИНЯЕТ
- SQL ПОДПИСИ
- SQL Union [9 упражнений]
- SQL View [16 упражнений]
- Управление учетными записями пользователей SQL [16 упражнение]
- База данных фильмов
- ОСНОВНЫЕ запросы к базе данных фильмов [10 упражнений]
- ПОДПИСКИ на фильм База данных [16 упражнений]
- ПРИСОЕДИНЯЕТСЯ к базе данных фильма [24 упражнения]
- Футбольная база
- Вступление
- ОСНОВНЫЕ запросы по футболу базы данных [29 упражнений]
- ПОДПИСКИ по футбольной базе данных [33 упражнения]
- База данных больницы
- База данных сотрудников
- ОСНОВНЫЕ запросы к базе данных сотрудников [115 упражнений]
- БРОНИРОВАНИЕ на сотрудника База данных [77 Упражнения]
- Еще не все!
Хотите улучшить вышеуказанную статью? Вносите свои заметки / комментарии / примеры через Disqus.
Предыдущая: СУММА с использованием GROUP BY
Далее: средняя функция
Новый контент: Composer: менеджер зависимостей для PHP , R программирования