Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
БД вопросы 16-29.docx
Скачиваний:
3
Добавлен:
01.04.2025
Размер:
169 Кб
Скачать
☆

17. Основные отличия sql от процедурных языков программирования. Встроенные функции

Отличие SQL от процедурных языков программирования

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

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

Функции преобразования символов в строке

• LOWER — перевод в строчные символы (нижний регистр) LOWER (<строка>)

• UPPER — перевод в прописные символы (верхний регистр) UPPER (<строка>)

• INITCAP — перевод первой буквы каждого слова строки в прописную(заглавную) INITCAP (<строка>)

Строковые функции

• LENGTH — определение длины строки LENGTH (<строка>)

  • LFAD(<строка>,<длина>[,<подстрока>]) — дополнение строки слева.

  • RPAD(<строка>,<длина>[,<подстрока>]) — дополнение строки справа.

  • LTRIM(<строка>[,<подстрока>]) — удаление левых граничных символов .

  • RTRIM(<строка>[,<подстрока>]) — удаление правых граничных символов

  • SUBSTR (<строка>,<нзчало>[,<количество>)) — выделение подстроки.

  • INSTR (<строка>,<подстрока>[,<начало поиска> [,<номер вхождения>]]) — поиск подстроки.

Функции работы с числами

  • ABS — абсолютное значение.

  • FLOOR— урезает значение числа с плавающей точкой до наибольшего целого

  • CEIL— самое малое целое, равное или большее заданного числа.

  • Гиперболические функции — COSH, SINH, TANH

  • Тригонометрические функции —COS, SIN, TAN и т.д.

  • Функция округления—ROUND

  • Функция усечения—TRUNC

  • Функция возведения в степень — POWER

Функции преобразования из одного типа данных в другой:

  • TO_CHAR, TO_NUMBER, TO_DATE, CAST.

Агрегирование и групповые функции

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

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

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

• МАХ вычисляет наибольшее из всех выбранных значений данного поля;

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

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

1) SELECT COUNT

FROM EXAM_MARKS;

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

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

SELECT STUDENT_ID, MAX(MARK)

FROM EXAM_MARKS

GROUP BYSTUDENT_ID;