Студопедия  
Главная страница | Контакты | Случайная страница

АвтомобилиАстрономияБиологияГеографияДом и садДругие языкиДругоеИнформатика
ИсторияКультураЛитератураЛогикаМатематикаМедицинаМеталлургияМеханика
ОбразованиеОхрана трудаПедагогикаПолитикаПравоПсихологияРелигияРиторика
СоциологияСпортСтроительствоТехнологияТуризмФизикаФилософияФинансы
ХимияЧерчениеЭкологияЭкономикаЭлектроника

Функции преобразования значений

TO_CHAR (значимое выражение [, символьный формат]) Преобразование в символьную строку: § значимое значение – числовое выражение или значение типа дата-время; § для числовых значений символьный форма т должен иметь синтаксис [S]9[9][.9[9]], где S - представление знака числа, 9 - представление цифр-знаков числового значения. Символьный формат определяет вид отображения чисел. По умолчанию для числовых значений используется формат '999999.99'; § для значений типа дата-время символьный формат имеет вид: ‘DD:Mon:YY’ ‘DD-Mon-YYYY’ ‘MM/DD/YY’ ‘MM/DD/YYYY’ ‘DD.MM.YY’ ‘DD.MM.YYYY’ § Возвращаемое значение – символьное представление значимого выражения в соответствии с заданным символьным форматом преобразованния
TO_NUMBER (значимое символьное выражение) Преобразование из символьного значения в числовое. При этом, значимое символьное выражение должно задавать символьное значение числового типа.
TO_DATE (значимое символьное выражение [, символьный формат]) Преобразование символьной строки в дату. § значимое символьное выражение должно задавать символьное значение типа дата-время; § символьный формат должен описывать представление значения типа дата-время в значимом символьном выражении. Допустимые форматы приведены выше. § Возвращаемое значение - значимое символьное выражение во внутреннем представлении. Тип возвращаемого значения - дата-время
CAST значимое выражение AS тип данных Средство явного преобразования данных из одного типа данных в другой.

 

24. Агрегирование и групповые функции. Упорядочение выходных полей.

 

Агрегирующие функции позволяют получать из таблицы сводную (агрегированную) информацию, выполняя операции над группой строк таблицы. Для задания в SELECT-запросе агрегирующих операций используются следующие ключевые слова:

COUNT – определяет количество строк или значений поля, выбранных посредством запроса и не являющихся NULL-значениями;

SUM – вычисляет арифметическую сумму всех выбранных значений поля;

AVG – вычисляет среднее значение для всех выбранных значений данного поля (в некоторых реализациях - AVERAGE);

MAX – вычисляет наибольшее из всех выбранных значений данного поля;

MIN – вычисляет наименьшее из всех выбранных значений данного поля;

В SELECT-запросе агрегирующие функции используются аналогично именам полей, при этом имена полей используются в качестве аргументов этих функций.

Пример. Определить среднего значения поля MARK по всем записям таблицы EXAM_MARK:

SELECT AVG (MARK)

FROM EXAM_MARK;

Пример. Подсчитать количество строк в таблице:

SELECT COUNT (*)

FROM EXAM_MARK;

Аргументы DISTINCT и ALL позволяют, соответственно, исключать и включать дубликаты обрабатываемых функцией COUNT значений.

Предложение GROUP BY (группировать по) позволяет группировать записи в подмножества, определяемые значениями какого-либо поля, и применять агрегирующие функции уже не ко всем записям таблицы, а раздельно к каждой сформированной группе.

Пример. Найти максимальное значение оценки полученной в результате экзаменов каждым студентом.

SELECT STUDENT_ID, MAX (MARK)

FROM EXAM_MARKS

GROUP BY STUDENT_ID;

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

В конструкции GROUP BY для группирования может быть использовано более одного столбца.

Пример.

SELECT STUDENT_ID, SUBJ_ID, MAX (MARK)

FROM EXAM_MARKS

GROUP BY STUDENT_ID, SUBJ_ID;

В данном случае строки вначале группируются по значениям первого столбца, а внутри этих групп - в подгруппы по значениям второго столбца.

Таким образом, предложение GROUP BY не только устанавливает столбцы, по которым осуществляется группирование, но и указывает порядок разбиения столбцов на группы.

Замечание! В предложении GROUP BY должны быть указаны все выбираемые столбцы, приведенные после ключевого слова SELECT, кроме столбцов, указанных в качестве аргумента в агрегирующей функции.

При необходимости часть сформированных с помощью GROUP BY групп может быть исключена с помощью предложения HAVING.

Предложение HAVING определяет критерий, по которому группы следует включать в выходные данные, по аналогии с предложением WHERE, которое осуществляет это для отдельных строк.

Пример.

SELECT SUBJ_NAME, MAX (HOUR)

FROM SUBJECT

GROUP BY SUBJ_NAME

HAVING MAX (HOUR)>=72;

Замечание! В условии, задаваемом предложением HAVING, указывают только поля или выражения, которые на выходе имеют единственное значение для каждой выводимой группы.




Дата добавления: 2015-09-12; просмотров: 17 | Поможем написать вашу работу | Нарушение авторских прав

По дисциплине | Обслуживающего персонала | Многопользовательские | Деление (R) | Ая нормальная форма | Изолированность пользователей | Команды манипулирования данными | Использование подзапросов в INSERT | Клиенты и серверы локальных сетей | Требования к аппаратным возможностям и базовому программному обеспечению клиентов и серверов |


lektsii.net - Лекции.Нет - 2014-2024 год. (0.007 сек.) Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав