Sqlserver
 sql >> Baza danych >  >> RDS >> Sqlserver

LOG10() Przykłady w SQL Server

W SQL Server funkcja T-SQL LOG10() function to funkcja matematyczna, która zwraca logarytm dziesiętny określonego wyrażenia zmiennoprzecinkowego.

Jako argument podajesz wyrażenie zmiennoprzecinkowe.

Składnia

Składnia wygląda tak:

LOG10 ( float_expression ) 

Gdzie float_expression jest wyrażeniem typu float lub typu, który może być niejawnie przekonwertowany na float.

Przykład 1 – Podstawowe użycie

Oto podstawowy przykład pokazujący, jak działa ta funkcja.

SELECT LOG10(10) Result;

Wynik:

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

A oto kolejny przykład z użyciem różnych wartości.

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

Wynik:

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

Przykład 2 – Wartość ujemna

Oto przykład przekazywania wartości ujemnej.

SELECT LOG10(-4) Result;

Wynik:

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

Ten przykład zwraca komunikat o błędzie, ponieważ logarytm można zwrócić tylko dla liczb dodatnich, które nie są 1.

Przykład 3 – Zero

Oto przykład przekazania zera jako argumentu (otrzymujemy ten sam wynik, co w poprzednim przykładzie).

SELECT LOG10(0) Result;

Wynik:

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

Przykład 4 – Podanie w 1

Przekazanie wartości 1 zwraca zero.

SELECT LOG10(1) Result;

Wynik:

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

Przykład 5 – Wyrażenia

Możesz również przekazywać wyrażenia takie jak:

SELECT LOG10(5*2) Result;

Wynik:

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

To w rzeczywistości to samo, co zrobienie tego:

SELECT LOG10(10) Result;

Wynik:

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

LOG()

Transact-SQL ma również funkcję LOG() funkcja zwracająca logarytm naturalny liczby.

W rzeczywistości możesz użyć LOG() zamiast LOG10() Jeśli wolisz. Aby to zrobić, użyj 10 jako drugi argument funkcji. Przykład poniżej.

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

Wynik:

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

  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Rozróżnianie wielkości liter w Postgres

  2. Korzystanie z warunkowej instrukcji UPDATE w SQL

  3. Zmień typy kolumn w ogromnej tabeli

  4. Jak zainstalować SQL Server w SUSE 12?

  5. Wyświetl listę kont skojarzonych z profilem poczty bazy danych w SQL Server