Sqlserver
 sql >> Datenbank >  >> RDS >> Sqlserver

LOG10()-Beispiele in SQL Server

In SQL Server das T-SQL LOG10() Funktion ist eine mathematische Funktion, die den Basis-10-Logarithmus des angegebenen Float-Ausdrucks zurückgibt.

Sie geben den Float-Ausdruck als Argument an.

Syntax

Die Syntax lautet wie folgt:

LOG10 ( float_expression ) 

Wobei float_expression ist ein Ausdruck vom Typ Float oder von einem Typ, der implizit in Float konvertiert werden kann.

Beispiel 1 – Grundlegende Verwendung

Hier ist ein einfaches Beispiel, um zu demonstrieren, wie diese Funktion funktioniert.

SELECT LOG10(10) Result;

Ergebnis:

+----------+
| Result   |
|----------|
| 1        |
+----------+

Und hier ist ein weiteres Beispiel mit verschiedenen Werten.

SELECT 
  LOG10(100) '100',
  LOG10(1000) '1000',
  LOG10(3000) '3000',
  LOG10(10000) '10000';

Ergebnis:

+-------+--------+------------------+---------+
| 100   | 1000   | 3000             | 10000   |
|-------+--------+------------------+---------|
| 2     | 3      | 3.47712125471966 | 4       |
+-------+--------+------------------+---------+

Beispiel 2 – Negativer Wert

Hier ist ein Beispiel für die Übergabe eines negativen Werts.

SELECT LOG10(-4) Result;

Ergebnis:

Msg 3623, Level 16, State 1, Line 1
An invalid floating point operation occurred.

Dieses Beispiel gibt eine Fehlermeldung zurück, da der Logarithmus nur für positive Zahlen zurückgegeben werden kann, die nicht 1 sind.

Beispiel 3 – Null

Hier ist ein Beispiel für die Übergabe von Null als Argument (wir erhalten das gleiche Ergebnis wie im vorherigen Beispiel).

SELECT LOG10(0) Result;

Ergebnis:

Msg 3623, Level 16, State 1, Line 1
An invalid floating point operation occurred.

Beispiel 4 – 1 übergeben

Das Übergeben eines Werts von 1 gibt Null zurück.

SELECT LOG10(1) Result;

Ergebnis:

+----------+
| Result   |
|----------|
| 0        |
+----------+

Beispiel 5 – Ausdrücke

Sie können auch Ausdrücke wie diesen übergeben:

SELECT LOG10(5*2) Result;

Ergebnis:

+----------+
| Result   |
|----------|
| 1        |
+----------+

Das ist im Grunde das Gleiche wie:

SELECT LOG10(10) Result;

Ergebnis:

+----------+
| Result   |
|----------|
| 1        |
+----------+

LOG()

Transact-SQL hat auch das LOG() Funktion, die den natürlichen Logarithmus einer Zahl zurückgibt.

Tatsächlich können Sie LOG() verwenden statt LOG10() wenn Sie es vorziehen. Verwenden Sie dazu 10 als zweites Argument der Funktion. Beispiel unten.

SELECT 
  LOG(100, 10) 'LOG',
  LOG10(100) 'LOG10';

Ergebnis:

+-------+---------+
| LOG   | LOG10   |
|-------+---------|
| 2     | 2       |
+-------+---------+