русс | укр

Языки программирования

ПаскальСиАссемблерJavaMatlabPhpHtmlJavaScriptCSSC#DelphiТурбо Пролог

Компьютерные сетиСистемное программное обеспечениеИнформационные технологииПрограммирование

Все о программировании


Linux Unix Алгоритмические языки Аналоговые и гибридные вычислительные устройства Архитектура микроконтроллеров Введение в разработку распределенных информационных систем Введение в численные методы Дискретная математика Информационное обслуживание пользователей Информация и моделирование в управлении производством Компьютерная графика Математическое и компьютерное моделирование Моделирование Нейрокомпьютеры Проектирование программ диагностики компьютерных систем и сетей Проектирование системных программ Системы счисления Теория статистики Теория оптимизации Уроки AutoCAD 3D Уроки базы данных Access Уроки Orcad Цифровые автоматы Шпаргалки по компьютеру Шпаргалки по программированию Экспертные системы Элементы теории информации

Группировка данных и агрегатные функции


Дата добавления: 2015-07-09; просмотров: 734; Нарушение авторских прав


Группировка и агрегирование данных совершаются с помощью функций, определенных в MySQL. Описание некоторых функций дано в табл.14.

Таблица 14. Функции MySQL

Название Описание
AVG (столбец) Средняя величина значений в определенном столбце
COUNT ( элементы) При указании столбца выдается число ненулевых значений в этом столбце. Если перед именем столбца указать DISTINCT, то выдается только количество неодинаковых значений
MIN (столбец) Минимальное значение в столбце
МАХ (столбец) Максимальное значение в столбце
SUM (столбец) Сумма значений в столбце

Агрегатные функции указываются подобно именам полей в запросе SELECT, но сами они используют имена поля в качестве аргументов. SUM и AVG могут обрабатывать только числовые поля. С функциями COUNT, MAX и MIN могут использоваться и числовые, и символьные поля. Например, чтобы определить количество водителей в автопарке, можно запросить

 

mysql>SELECT COUNT(id) FROM drivers;

 

Если надо узнать, сколько водителей работало за отчетное время, то подойдет команда

 

mysql>SELECT COUNT (DISTINCT driver_number) FROM timetable;

 

Функция count (*) посчитает число строк в таблице, но если указать count (field) — посчитать значения в поле field, в котором есть значения NULL, то пустые поля учтены не будут.

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

Посчитаем, сколько автомобилей есть в таксопарке, сгруппировав данные по моделям:

 

mysql>SELECT model, COUNT(model) FROM carsGROUP BY model;

 

Каждая группа состоит из строк с одинаковым значением поля model. Результат запроса представлен на рис. 8.



Рис. 8. Упорядочение результатов запроса

 

Таблицы – это неупорядоченные наборы данных, и выборка из них не обязательно появляется в какой-то определенной последовательности. Для извлечения данных в определенном порядке используется конструкция ORDER BY.

Упорядочим сведения о водителях по дате рождения:

 

mysql>SELECT * FROM drivers ORDER BY birth;

 

В полученной выборке список откроют старшие водители. Если требуется упорядочить данные по убыванию, следует использовать ключевое слово DESC (от англ, descending — по убыванию):

 

mysql>SELECT * FROM drivers ORDER BY birth DESC;

 

Конструкция LIMIT служит для указания, сколько строк результата следует отображать. Если надо найти двух самых пожилых водителей, то можно применить такую команду:

 

mysql>SELECT * FROM drivers ORDER BY birth LIMIT 2;

 

Можно использовать два параметра: номер строки, с которой следует начать, и количество строк.

 

mysql>SELECT family_name FROM drivers LIMIT 2,3;

 

Последний запрос можно интерпретировать так: "Выбрать фамилии водителей, в результате отобразить три строки, начиная со строки 2". Нумерация строк начинается с нуля.



<== предыдущая лекция | следующая лекция ==>
Запросы с указанием критерия отбора данных | Самостоятельная работа №3


Карта сайта Карта сайта укр


Уроки php mysql Программирование

Онлайн система счисления Калькулятор онлайн обычный Инженерный калькулятор онлайн Замена русских букв на английские для вебмастеров Замена русских букв на английские

Аппаратное и программное обеспечение Графика и компьютерная сфера Интегрированная геоинформационная система Интернет Компьютер Комплектующие компьютера Лекции Методы и средства измерений неэлектрических величин Обслуживание компьютерных и периферийных устройств Операционные системы Параллельное программирование Проектирование электронных средств Периферийные устройства Полезные ресурсы для программистов Программы для программистов Статьи для программистов Cтруктура и организация данных


 


Не нашли то, что искали? Google вам в помощь!

 
 

© life-prog.ru При использовании материалов прямая ссылка на сайт обязательна.

Генерация страницы за: 0.005 сек.