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 таблица:
Примери за агрегатни функции
Нека да разгледаме примерите за всяка агрегатна функция в 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 ч |
| RAM | 13.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 |
| RAM | 2017-01-13 |
Важни точки относно SQL функциите
Създаване на тест
- SQL функциите са вградени програми, които се използват за манипулиране на данни по различни начини.
- Има различни видове SQL функции - агрегатни функции и скаларни функции.
- Агрегираните функции извършват изчисления върху група от стойности и връщат една стойност. Пример SUM AVG COUNT.
- Скаларните функции работят с една стойност и връщат една стойност. Пример ГОРЕН ДОЛЕН ПОДНИЗ.
- SQL функциите могат да се използват в различни SQL оператори като SELECT WHERE GROUP BY и ORDER BY за подобряване на обработката и анализа на данни.