logo

SQL функции (агрегирани и скаларни функции)

SQL функции са вградени програми, които се използват за извършване на различни операции с базата данни.

има две видове на функции в SQL:

  • Агрегатни функции
  • Скаларни функции

SQL агрегатни функции

SQL агрегатни функции работи върху група данни и връща единичен изход. Те се използват предимно с ГРУПИРАНЕ ПО клауза за обобщаване на данни. 



Някои общи агрегатни функции със синтаксис и описание са показани в таблицата по-долу.

Агрегатна функцияОписаниеСинтаксис
AVG()Изчислява средната стойностSELECT AVG(име_на_колона) FROM име_на_таблица;
БРОЙ()Преброява броя на редоветеSELECT COUNT(име_на_колона) ОТ име_на_таблица
ПЪРВИ()Връща първата стойност в подреден набор от стойностиSELECT FIRST(име_на_колона) FROM име_на_таблица;
ПОСЛЕДЕН()Връща последната стойност в подреден набор от стойностиSELECT LAST(име_на_колона) FROM име_на_таблица;
MAX()Извлича максималната стойност от колонаSELECT MAX(име_на_колона) FROM име_на_таблица;
MIN()Извлича минималната стойност от колонаSELECT MIN(име_на_колона) FROM име_на_таблица;
SUM()Изчислява общата сума на стойностите в числова колонаSELECT SUM(име_на_колона) FROM име_на_таблица;

SQL скаларни функции

SQL скаларни функции са вградени функции, които работят с една стойност и връщат една стойност.

Скаларните функции в SQL помагат за ефективно манипулиране на данни и опростяване на сложни изчисления в SQL заявки.

Скаларна функцияОписаниеСинтаксис
UCASE()Преобразува низ в главни буквиSELECT UCASE(име_на_колона) FROM име_на_таблица;
LCASE()Преобразува низ в малки буквиSELECT LCASE(име_на_колона) FROM име_на_таблица;
MID()Извлича подниз от низSELECT MID (начална дължина на име_на_колона) FROM име_на_таблица;
САМО()Връща дължината на низSELECT LEN(име_на_колона) FROM име_на_таблица;
КРЪГ()Закръглява число до определен брой десетични знациSELECT ROUND(име_на_колона десетични знаци) FROM име_на_таблица;
СЕГА()Връща текущите дата и часИЗБЕРЕТЕ СЕГА();
ФОРМАТ()Форматира стойност с посочения форматSELECT FORMAT(формат на име_на_колона) FROM име_на_таблица;

Примери за SQL функции

Нека да разгледаме някои примери за SQL функции. Ще разгледаме примери за SQL агрегатни функции и скаларни функции.

Ще изпълняваме заявки към дадената SQL таблица:

ученическа маса' src='//techcodeview.com/img/sql/83/sql-functions-aggregate-and-scalar-functions.webp' title=

Примери за агрегатни функции

Нека да разгледаме примерите за всяка агрегатна функция в SQL.

Пример за функция AVG().

Изчисляване на средните оценки на учениците. 

Запитване:

    SELECT    AVG(MARKS)     AS    AvgMarks     FROM    Students; 

Изход: 

AvgMarks
80

Пример за функция COUNT().

Изчисляване на общия брой ученици. 

низ замества всички java

Запитване: 

    SELECT COUNT   (*)     AS    NumStudents     FROM    Students;

Изход: 

Брой студенти
5

Пример за функция FIRST().

java system.out.println

Извличане на оценки на първия ученик от таблицата Ученици. 

Запитване:

    SELECT FIRST   (MARKS)     AS    MarksFirst     FROM    Students;

Изход: 

MarksFirst
90

ПОСЛЕДЕН() Пример за функция

Извличане на оценки на последния ученик от таблицата Ученици. 

Запитване:

    SELECT LAST   (MARKS)     AS    MarksLast     FROM    Students;

Изход: 

MarksLast
85

Пример за функция MAX().

Извличане на максимални оценки сред учениците от таблицата Students. 

Запитване:

    SELECT MAX   (MARKS)     AS    MaxMarks     FROM    Students;

Изход

MaxMarks
95

Пример за функция MIN().

Извличане на минимални оценки сред учениците от таблицата Students. 

Запитване:

    SELECT MIN   (MARKS)     AS    MinMarks     FROM    Students;

Изход

MinMarks
50

Пример за функция SUM().

Извличане на сумата от общите оценки сред учениците от таблицата Студенти.

Запитване:  

SELECT SUM(MARKS) AS TotalMarks FROM Students;

Изход

int да се удвои
Общо точки
400

Примери за скаларни функции

Нека да разгледаме някои примери за всяка скаларна функция в SQL.

Пример за функция UCASE().

Преобразуване на имена на студенти от таблицата Students в главни букви. 

Запитване:

    SELECT UCASE   (NAME)     FROM    Students;

Изход: 

ИМЕ
СУРОВ
СУРЕШ
ПРАКТИКА
ДХАНРАЖ
RAM

Пример за функция LCASE().  

Преобразуване на имена на студенти от таблицата Students в малки букви. 

Запитване:

    SELECT LCASE   (NAME)     FROM    Students;

Изход: 

ИМЕ
суров
суреш
практика
дханрадж
овен

Пример за функция MID().

Извличане на първите четири знака от имена на ученици от таблицата Students. 

Запитване:

    SELECT MID   (NAME14) FROM Students; 

Изход

ИМЕ
СМОЛА
СИГУРНО
ПРАЦ
ВСИЧКИ
RAM

Пример за функция LEN().  

Извличане на дължина на имената на учениците от таблицата Students. 

Запитване:

    SELECT LENGTH   (NAME)     FROM    Students;

Изход: 

ИМЕ
5
6
6
7
3

Пример за функция ROUND().  

конвертиране от char в int java

Извличане на максимални оценки сред учениците от таблицата Students. 

Запитване:

    SELECT ROUND   (MARKS0)     FROM    Students; 

Изход

МАРКИ
90
50
80
95
85

Пример за функция NOW().  

Извлича се текущото системно време. 

Запитване:

    SELECT NAME NOW() AS    DateTime     FROM    Students    ;    

Изход: 

ИМЕ Дата и час
СУРОВ13.01.2017 г. 13:30:11 ч
СУРЕШ13.01.2017 г. 13:30:11 ч
ПРАКТИКА13.01.2017 г. 13:30:11 ч
ДХАНРАЖ13.01.2017 г. 13:30:11 ч
RAM13.01.2017 г. 13:30:11 ч

Пример за функция FORMAT().  

Текущата дата се форматира като „ГГГГ-ММ-ДД“. 

Запитване:

    SELECT    NAME     FORMAT   (Now()'YYYY-MM-DD')     AS    Date     FROM    Students; 

Изход: 

ИМЕ Дата
СУРОВ2017-01-13
СУРЕШ2017-01-13
ПРАКТИКА2017-01-13
ДХАНРАЖ2017-01-13
RAM2017-01-13

 Важни точки относно SQL функциите

  • SQL функциите са вградени програми, които се използват за манипулиране на данни по различни начини.
  • Има различни видове SQL функции - агрегатни функции и скаларни функции.
  • Агрегираните функции извършват изчисления върху група от стойности и връщат една стойност. Пример SUM AVG COUNT.
  • Скаларните функции работят с една стойност и връщат една стойност. Пример ГОРЕН ДОЛЕН ПОДНИЗ.
  • SQL функциите могат да се използват в различни SQL оператори като SELECT WHERE GROUP BY и ORDER BY за подобряване на обработката и анализа на данни.
Създаване на тест