Другие математические функции

Средний уровень SQL Server

Ginger Grant

Instructor

Абсолютное значение

Используйте ABS() для получения неотрицательных значений

ABS(number)
Средний уровень SQL Server

Использование ABS в T-SQL (I)

SELECT ABS(-2.77), ABS(3), ABS(-2)
+--------------------+-------------------+-------------------+
|(No column name)    |(No column name)   |(No column name)   |
+--------------------+-------------------+-------------------+
|2.77                |3                  |2                  |
+--------------------+-------------------+-------------------+

Средний уровень SQL Server

Использование ABS в T-SQL (II)

SELECT DurationSeconds, ABS(DurationSeconds) AS AbsSeconds 
FROM Incidents
+--------------------+--------------------+ 
|DurationSeconds     |AbsSeconds          | 
+--------------------+--------------------+ 
|-25.36              |25.36               | 
|-258482.44          |258482.44           |
|45.66               |45.66               |
+--------------------+--------------------+ 
Средний уровень SQL Server

Квадрат и квадратный корень в T-SQL

SELECT SQRT(9) AS Sqrt, 
       SQUARE(9) AS Square
+--------+-----------+ 
|Sqrt    |Square     |
+--------------------+
|3       |81         |
+--------+-----------+

Средний уровень SQL Server

Логарифмы

  • LOG() возвращает натуральный логарифм
  • Основание можно задать явно; по умолчанию оно равно 2,718281828

 

LOG(number [,Base])
Средний уровень SQL Server

Вычисление логарифмов в T-SQL

SELECT  DurationSeconds, LOG(DurationSeconds, 10) AS LogSeconds
FROM Incidents
+--------------------+--------------------+  
|DurationSeconds     |LogSeconds          |
+--------------------+--------------------+  
|37800               |4.577491799837225   |
|5                   |0.6989700043360187  |
|20                  |1.301029995663981   |
...
+--------------------+--------------------+  
Средний уровень SQL Server

Логарифм нуля

Логарифм нуля вычислить невозможно — это приведёт к ошибке

SELECT LOG(0, 10)

An invalid floating point operation occurred.
Средний уровень SQL Server

Давайте потренируемся!

Средний уровень SQL Server

Preparing Video For Download...