Студопедия

КАТЕГОРИИ:

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

Охарактеризуйте простейшие SELECT-запросы, операторы LIKE, ISNULL.




Оператор like применим только к символьным полям типа CHAR или VARCHAR.

Этот оператор просматривает строковые значения полей с целью определения, входит ли заданная в операторе Like подстрока (образец поиска) в символьную строку-значение проверяемого поля.

Имеются два типа групповых символов, используемых с LIKE:

* символ подчеркивания (_) замещает любой одиночный символ. Например, 'b_t' будет соответствовать словам 'bat' или 'bit', но не будет соответствовать 'brat'.

* знак процента (%) замещает последовательность любого числа символов (включая символы нуля). Например, '%p%t' будет соответствовать словам 'put', 'posit', или 'opt', но не 'spite'.

Пример.

Написать запрос, выбирающий из таблицы STUDENT сведения о студентах, фамилии которых начинаются на букву «П».

SELECT * FROM STUDENT

WHERE SURNAME LIKE ‘П’;

Оператор IS, который используется с ключевым словом NULL (указывающее на отсутствие значения), для размещения значения NULL.

Пример: Найдем все записи в нашей таблице Заказчиков с NULL значениями в city столбце:

SELECT * FROM Customers

WHERE city IS NULL;

 

Опишите преобразование вывода и встроенные в SQL функции.

 SQL Server может выполнять неявные преобразования от типа с меньшим приоритетом к типу с большим приоритетом. Таблица приоритетов (чем выше, тем больший приоритет):

datetime

smalldatetime

float

real

decimal

money

smallmoney

int

smallint

tinyint

bit

nvarchar

nchar

varchar

char

В тех случаях, когда необходимо выполнить преобразования от типов с высшим приоритетом к типам с низшим приоритетом определены две функции: CONVERT и CAST

Функция CAST преобразует выражение одного типа к другому. Она имеет следующую форму:

CAST(выражение AS тип_данных)

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

STR(float [, length [,decimal]]): преобразует число в строку. Второй параметр указывает на длину строки, а третий - сколько знаков в дробной части числа надо оставлять

CHAR(int): преобразует числовой код ASCII в символ. Нередко используется для тех ситуаций, когда необходим символ, который нельзя ввести с клавиатуры

ASCII(char): преобразует символ в числовой код ASCII

NCHAR(int): преобразует числовой код UNICODE в символ

UNICODE(char): преобразует символ в числовой

Охарактеризуйте агрегирование и групповые функции в SQL.

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

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

- sum вычисляет арифметическую сумму всех выбранных зна­чений данного поля;

- avg вычисляет среднее значение для всех выбранных значе­ний данного поля;

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

- min вычисляет наименьшее из всех выбранных значений данного поля.

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

Групповые функции

могут появляться в списках выбора и в предложениях ORDER BY и HAVING. Сервер Oracle применяет групповые функции к каждой группе строк и возвращает одну строку результатов для каждой группы. Групповые функции выполняют действия над наборами строк, чтобы создать один результат для группы.

Типы групповых функций.

Каждая из групповых функций – AVG, SUM, MAX, MIN, COUNT, STDDEV и VARIANCE – принимает единственный аргумент. Функции AVG, SUM, STDDEV и VARIANCE работают только с числовыми значениями. Функции MAX и MIN могут работать с числовыми и символьными значениями данных, а также с датами. Функция COUNT возвращает количество непустых строк для заданного выражения. В примере на рисунке определяются средний оклад, среднеквадратическое отклонение, количество сотрудников, получающих комиссионные, а также максимальная дата приемана работу для сотрудников, у которых значение JOB_ID начинается с SA.

Указания по использованию групповых функций

Типами данных для аргументов могут быть CHAR, VARCHAR2, NUMBER или DATE.

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

При использовании предложения GROUP BY сервер Oracle неявно сортирует набор результатов в порядке возрастания заданных для группирования столбцов. Чтобы переопределить этот стандартный порядок, в предложении ORDER BY можно использовать параметр DESC.

 

Опишите пустые значения в агрегирующих функциях, процесс упорядочения выходных полей в SQL.

Пустые значения (NULL) в агрегирующих функциях

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

Влияние NULL-значений в функции COUNT.

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

Если аргументом функции является столбец, содержащий пустое значение, то COUNT вернет число строк, которые не содержат пустые значения и к которым применимо определенное в COUNT условие или группирование.

Если бы механизм NULL не был доступен, то неприменимые и отсутствующие значения пришлось бы исключать с помощью КОНСТРУКЦИИ WHERE.

Поведение функции COUNT(*) не зависит от пустых значений. Она возвратит общее количество строк в таблице.










Последнее изменение этой страницы: 2018-05-10; просмотров: 228.

stydopedya.ru не претендует на авторское право материалов, которые вылажены, но предоставляет бесплатный доступ к ним. В случае нарушения авторского права или персональных данных напишите сюда...