Езикът SQL има изобилие от цифрови и математически функции и в тази статия ще видите как да ги използвате.
Следва списък с най-популярните SQL числови функции:
- ABS
- ACOS
- ASIN
- АТАН
- AVG
- ТАВАН
- COUNT
- COS
- COT
- ГРАДУСИ
- ЕТАЖ
- MAX
- MIN
- МОЩНОСТ
- РАДИАНИ
- RAND
- КРЪГЛО
- SIN
- SQRT
- SUM
- TAN
Нека ги разгледаме един по един
ABS
Функцията SQL ABS връща абсолютната стойност на число. Абсолютна стойност означава колко далеч е определено число от нулата. Например:-5 е 5 от 0, а 5 също е 5 от 0. Ето кратък SQL пример, демонстриращ използването на ABS SQL функцията
SELECT ABS(-179.3) AS Abs1, ABS(179.3) AS Abs2
И двете дават един и същ резултат от 179.3, тъй като отрицателният знак се премахва.
ACOS
Функцията ACOS SQL връща обратния косинус на число. Следващият пример показва как да получите дъга косинус на определено число:
SELECT ACOS(0.17)
Това дава отговора на
1.39996665766579
ASIN
Функцията ASIN SQL връща обратния синус на число. Следващият пример показва как да получите арксинус на определено число:
SELECT SIN(0.17)
Това дава отговора на
0.170829669129105
АТАН
Функцията ATAN SQL връща обратната тангенс на число. Следващият пример показва как да се получи дъговата тангенс на определено число:
SELECT TAN(17)
Това дава отговор на:
1.51204050407917
AVG
Функцията AVG SQL връща средната стойност на израз. Следващият пример избира всички ученици, чиито средни оценки са по-големи от 75:
SELECT StudentName, StudentSurname, StudentMarks FROM Students WHERE AVG(StudentMarks) > 75 GROUP BY StudentName, StudentSurname, StudentMarks
Функцията AVG е агрегатна функция (функция, която извършва изчисление на една или повече стойности, но връща една стойност)
ТАВАН
Функцията CEILING SQL връща най-малката стойност (цяло число), която е по-голяма или равна на дадено число. Следващият пример показва 57, защото 57 е следващата най-малка стойност на цяло число, която е по-висока от 56,21:
SELECT CEILING(56.21)
БРОЙ
Функцията COUNT SQL също е агрегатна функция. Връща броя на записите, върнати от заявка. Следващият пример ще преброи броя на учениците, които правят клас „Програмиране“:
SELECT COUNT(StudentID) FROM Students WHERE StudentCourse = 'Programming'
COS
Функцията COS SQL връща косинус на число. Следващият пример показва как да получите косинус на определено число:
SELECT COS(0.17)
Това дава отговор на:
0.985584766909561
Грешка
Функцията COT SQL връща котангенса на число. Следното показва как да получите котангенса на определено число:
SELECT COT(0.17)
Това дава отговор на:
5.82557679536221
ГРАДУСИ
Функцията DEGREES SQL преобразува радианите стойности в градуси. Следващият пример разделя PI на 2, за да върне 90 градуса:
SELECT DEGREES(PI() / 2)
ЕТАЖ
Функцията FLOOR SQL връща най-голямата стойност (цяло число), която е по-малка или равна на дадено число. Следващият пример показва 56, защото 56 е следващата най-голяма стойност на цяло число, която е по-малка от 56,21:
SELECT FLOOR(56.21)
MAX
Функцията MAX SQL също е агрегатна функция. Връща максималната стойност в група от стойности. Следващият пример ще покаже най-високите оценки на всеки ученик:
SELECT StudentName, StudentSurname, MAX(StudentMarks) FROM Students GROUP BY StudentName, StudentSurname, StudentMarks
MIN
Функцията MIN SQL също е агрегатна функция. Връща минималната стойност в група от стойности. Следващият пример ще покаже най-ниските оценки на всеки ученик:
SELECT StudentName, StudentSurname, MIN(StudentMarks) FROM Students GROUP BY StudentName, StudentSurname, StudentMarks
ЗАХРАНВАНЕ
Функцията POWER SQL връща стойността на едно число, повдигнато на степен на друго число. Следващият пример показва резултата от 11 x 11 x 11 (11 повдигнати на степен 3), което е 1331:
SELECT POWER(11, 3)
РАДИАНИ
Функцията RADIANS SQL преобразува стойностите на градусите в радиани. Следващият пример получава радианската стойност от 135 градуса:
SELECT RADIANS(135)
RAND
Функцията RAND SQL произвежда произволно число между нула и едно. Ето един бърз пример:
SELECT RAND()
Горното ми дава 0,529394917183986 първия път и 0,156402098552622 втория път
КРЪГЛА
Функцията ROUND SQL закръглява числови стойности. Следващият пример закръглява стойността на сбора от полето StudentMarks до 2 знака след десетичната запетая, където курсът е „SQL“ и името на студента е „Hannes“:
SELECT StudentName, StudentCourse, ROUND(SUM(StudentMarks), 2) FROM Students WHERE StudentCourse = 'SQL' AND StudentName = 'Hannes' GROUP BY StudentName, StudentCourse
SIN
Функцията SIN SQL връща синуса на число. Следващият пример показва как да получите синуса на определено число:
SELECT SIN(0.17)
Това дава отговор на:
0.169182349066996
SQRT
Функцията SQRT SQL връща корен квадратен от число. Следващият пример ще върне 7, защото 7 * 7 е равно на 49:
SELECT SQRT(49)
SUM
Функцията SUM SQL също е агрегатна функция. Той сумира стойностите на записите, върнати от заявка. Следващият пример сумира всички оценки за ученик на име Ханес, който прави SQL клас:
SELECT StudentName, StudentCourse, SUM(StudentMarks) FROM Students WHERE StudentCourse = 'SQL' AND StudentName = 'Hannes' GROUP BY StudentName, StudentCourse
TAN
Функцията TAN SQL връща тангенса на число. Следващият пример показва как да получите тангенса на определено число:
SELECT TAN(17)
Това дава отговор на:
3.49391564547484
Заключение
SQL е доста мощен и се надявам, че това ръководство ви е помогнало с вашите математически проблеми в SQL