Популярные услуги

Все письменные КМ под ключ за 3 суток! (КМ-6 + КМ-7 + КМ-8 + КМ-9 + КМ-10)
КМ-6. Динамические массивы. Семинар - выполню любой вариант!
Любая задача на C/C++
Одно любое задание в mYsql
Любой тест по базам данных максимально быстро на хорошую оценку - или верну деньги!
Любой реферат по объектно-ориентированному программированию (ООП)
Повышение уникальности твоей работе
КМ-2. Разработка простейших консольных программ с использованием ООП + КМ-4. Более сложные элементы ООП - под ключ!
Оба семинара по программированию под ключ! КМ-2. Разработка циклических алгоритмов + КМ-3. Функции и многофайловые программы в Си
Любой реферат по информатике

Использование статистических функций

2021-03-09СтудИзба

9. Использование статистических функций

В языке SQL имеются функции, которые используются с целью выборки данных для анализа и создания отчетов. Примерами таких выборок могут послужить:

· Определение числа строк в таблице, которые удовлетворяют какому-то условию или содержат определенное значение;

· Получение суммы по выбору строк в таблице;

· Поиск наибольшего, наименьшего и среднего значений из столбца таблицы из всех строк или из каких-то конкретных строк.

В этих выборках требуются какие-то итоговые данные по таблице, а не сами данные. В SQL предусмотрен набор из пяти статистических функций, которые поддерживаются в большинстве реализаций SQL. Это следующие функции:

AVG()                        Возвращает среднее значение столбца

COUNT()       Возвращает число строк в столбце

MAX()            Возвращает самое большое значение в столбце

Рекомендуемые материалы

MIN()             Возвращает самое маленькое значение в столбце

SUM()            Возвращает сумму значений столбца

 9.1.  Функция AVG

Функция возвращает среднее значение определенного столбца путем подсчета числа строк в таблице и суммирование их значений.

Эту функцию можно использовать для возвращения среднего значения всех столбцов или определенных столбцов или строк.

В примере требуется возвратить среднюю цену для всех продуктов таблицы Products.

SELECT AVG(prod_price) AS avg_price

FROM Products                                                           

--------------------------

avg_price

6.82p

В следующем примере требуется вернуть среднюю цену продуктов, предлагаемых поставщиком DLL01. В оператрое используется предложение WHERE/

SELECT AVG(prod_price) AS avg_price

FROM Products

WHERE vend_id = ‘DLL01’                                                                          

--------------------------

avg_price

3.87

Функция AVG можно использовать только для вычисления среднего значения определенного столбца, имя которого указывается в качестве параметра функции. Чтобы получить среднее значение нескольких столбцов, необходимо использовать несколько функций AVG.

Функция AVG игнорирует строки столбца, содержащие значения NULL.

9.2.  Функция COUNT

Функция подсчитывает строк в таблице. Она позволяет подсчитать общее число строк в таблице или число строк, удовлетворяющих определенному критерию.  Функцию можно использовать двумя способами:

· В виде COUNT(*) для подсчета числа строк в таблице независимо от того, содержат столбцы значения NULL или  нет.

· В виде COUNT(column) для подсчета числа строк, которые имеют значения в указанных столбцах, причем значения NULL игнорируются.

Требуется вернуть общее число имен клиентов, содержащихся в таблице Customers.

SELECT COUNT(*) AS num_cust

FROM Customers

--------------------------

num_cust

5

Требуется подсчитать только клиентов, имеющих адреса электронной почты.

 

SELECT COUNT(cust_email) AS num_cust

FROM Customers

--------------------------

num_cust

3

Строки столбцов со значениями NULL игнорируются функцией COUNT(), если указано имя столбца, и учитываются, если используется звездочка.

9.3.  Функция MAX

Функция возвращает самое большое значение из указанного столбца.

Требуется вернуть цену наиболее дорогого продукта в таблице Products.

SELECT MAX(prod_price) AS max_price

FROM Products

--------------------------

max_price

11.99p.

Функция MAX() обычно используется для поиска наибольшего числового значение или даты. Некоторые СУБД позволяют использовать ее для возвращения наибольшего значения из всех столбцов, включая и текстовые. При использовании с текстовыми данными функция MAX() возвращает строку, которая была бы последней, если бы данные были отсортированы по этой строке.

SELECT MAX(prod_name) AS max_name

FROM Products

--------------------------

max_name

Raggedy Ann

Функция MAX() игнорирует строки столбцов со значениями NULL/

9.4.  Функция MIN

Функция MIN() возвращает наименьшее значение в указанном столбце.

Требуется вернуть цену самого дешевого продукта в таблице Products.

SELECT MIN(prod_price) AS min_price

FROM Products

--------------------------

min_price

3.49p.

При использовании MIN() с текстовыми данными возвращается строка, которая была бы первой, если бы данные были отсортированы по этой строке.

SELECT MIN(prod_name) AS min_name

FROM Products

--------------------------

min_name

12 inch teddy bear  

Функция MIN() игнорирует строки столбцов со значениями NULL/

9.5.  Функция SUM

Функция SUM() возвращает сумму значений в определенном столбце.

Требуется определить общее число заказанных продуктов в таблице OrderItems.

SELECT SUM(quantity) AS num_ordered

FROM OrderItems

WHERE order_num =20005

--------------------------

num_ordered

200

Требуется определить сумму всех цен в заказе 20005.

SELECT SUM(item_price*quantity) AS total_price

FROM OrderItems

WHERE order_num =20005

--------------------------

total_price

1648.00p.

Функция SUM() игнорирует строки столбцов со значением NULL.

9.6.  Статистические вычисления для отдельных значений

 Все пять статистические функции могут использоваться двумя способами:

· для вычисления во всех строках при указании аргумента ALL (по умолчанию) или без указания какого-либо аргумента;

· для указания отдельных значений при помощи аргумента DISTINCT.

В примере возвращается средняя цена продуктов, предлагаемых поставщиком DLL01.

SELECT AVG(prod_price) AS avg_price

FROM Products

WHERE vend_id =’DLL01’

--------------------------

avg_price

3.87p.

Использование ключевого слова DISTINCT значение avg_price получится более высоким, так как в таблице есть несколько предметов с одинаково низкой ценой и будет учитываться эта цена один раз.

 

SELECT AVG(DISTINCT prod_price) AS avg_price

FROM Products

WHERE vend_id =’DLL01’

--------------------------

avg_price

4.24p.

Access не поддерживает использование аргумента DISTRINCT  в статистических функциях.

Ключевое слово DISTINCT можно использовать с функцией COUNT() только в том случае, если указано имя столбца, если указана *, то использовать нельзя.

9.7.  Комбинирование статистических функций

Оператор SELECT могут содержать столько статистических функций, сколько нужно.

Вычислить в таблице Products самую высокую, самую низкую и среднюю стоимость продукта.

SELECT COUNT(*) AS num_items,

                MIN(prod_price) AS price_min,

Лекция "1.7. Особенности защиты населения от терроризма" также может быть Вам полезна.

                MAX(prod_price) AS price_max,

                AVG(prod_price) AS price_avg

FROM Products;

--------------------------

num_items          price_min        price_max       price_avg

9                          3.49p.              11.99p.            6.82p.

Свежие статьи
Популярно сейчас
Зачем заказывать выполнение своего задания, если оно уже было выполнено много много раз? Его можно просто купить или даже скачать бесплатно на СтудИзбе. Найдите нужный учебный материал у нас!
Ответы на популярные вопросы
Да! Наши авторы собирают и выкладывают те работы, которые сдаются в Вашем учебном заведении ежегодно и уже проверены преподавателями.
Да! У нас любой человек может выложить любую учебную работу и зарабатывать на её продажах! Но каждый учебный материал публикуется только после тщательной проверки администрацией.
Вернём деньги! А если быть более точными, то автору даётся немного времени на исправление, а если не исправит или выйдет время, то вернём деньги в полном объёме!
Да! На равне с готовыми студенческими работами у нас продаются услуги. Цены на услуги видны сразу, то есть Вам нужно только указать параметры и сразу можно оплачивать.
Отзывы студентов
Ставлю 10/10
Все нравится, очень удобный сайт, помогает в учебе. Кроме этого, можно заработать самому, выставляя готовые учебные материалы на продажу здесь. Рейтинги и отзывы на преподавателей очень помогают сориентироваться в начале нового семестра. Спасибо за такую функцию. Ставлю максимальную оценку.
Лучшая платформа для успешной сдачи сессии
Познакомился со СтудИзбой благодаря своему другу, очень нравится интерфейс, количество доступных файлов, цена, в общем, все прекрасно. Даже сам продаю какие-то свои работы.
Студизба ван лав ❤
Очень офигенный сайт для студентов. Много полезных учебных материалов. Пользуюсь студизбой с октября 2021 года. Серьёзных нареканий нет. Хотелось бы, что бы ввели подписочную модель и сделали материалы дешевле 300 рублей в рамках подписки бесплатными.
Отличный сайт
Лично меня всё устраивает - и покупка, и продажа; и цены, и возможность предпросмотра куска файла, и обилие бесплатных файлов (в подборках по авторам, читай, ВУЗам и факультетам). Есть определённые баги, но всё решаемо, да и администраторы реагируют в течение суток.
Маленький отзыв о большом помощнике!
Студизба спасает в те моменты, когда сроки горят, а работ накопилось достаточно. Довольно удобный сайт с простой навигацией и огромным количеством материалов.
Студ. Изба как крупнейший сборник работ для студентов
Тут дофига бывает всего полезного. Печально, что бывают предметы по которым даже одного бесплатного решения нет, но это скорее вопрос к студентам. В остальном всё здорово.
Спасательный островок
Если уже не успеваешь разобраться или застрял на каком-то задание поможет тебе быстро и недорого решить твою проблему.
Всё и так отлично
Всё очень удобно. Особенно круто, что есть система бонусов и можно выводить остатки денег. Очень много качественных бесплатных файлов.
Отзыв о системе "Студизба"
Отличная платформа для распространения работ, востребованных студентами. Хорошо налаженная и качественная работа сайта, огромная база заданий и аудитория.
Отличный помощник
Отличный сайт с кучей полезных файлов, позволяющий найти много методичек / учебников / отзывов о вузах и преподователях.
Отлично помогает студентам в любой момент для решения трудных и незамедлительных задач
Хотелось бы больше конкретной информации о преподавателях. А так в принципе хороший сайт, всегда им пользуюсь и ни разу не было желания прекратить. Хороший сайт для помощи студентам, удобный и приятный интерфейс. Из недостатков можно выделить только отсутствия небольшого количества файлов.
Спасибо за шикарный сайт
Великолепный сайт на котором студент за не большие деньги может найти помощь с дз, проектами курсовыми, лабораторными, а также узнать отзывы на преподавателей и бесплатно скачать пособия.
Популярные преподаватели
Добавляйте материалы
и зарабатывайте!
Продажи идут автоматически
5167
Авторов
на СтудИзбе
438
Средний доход
с одного платного файла
Обучение Подробнее