sql >> Database >  >> RDS >> Mysql

MySQL LOG2() Functie – Retourneer de Base-2 logaritme van een waarde

In MySQL is de LOG2() functie retourneert de logaritme met grondtal-2 van een opgegeven waarde.

U geeft de opgegeven waarde op als argument bij het aanroepen van de functie.

Syntaxis

Deze syntaxis gaat als volgt:

LOG2(X)

Waar X is de waarde waarvoor u de logaritme met grondtal-2 wilt retourneren.

Als X kleiner is dan of gelijk is aan 0.0E0, retourneert de functie NULL en er wordt een waarschuwing gegenereerd.

Voorbeeld 1 – Basisgebruik

Hier is een eenvoudig voorbeeld om te demonstreren hoe deze functie werkt.

SELECT LOG2(4);

Resultaat:

+---------+
| LOG2(4) |
+---------+
|       2 |
+---------+

En hier is nog een voorbeeld waarbij verschillende waarden worden gebruikt.

SELECT 
  LOG2(8),
  LOG2(16),
  LOG2(128),
  LOG2(256),
  LOG2(1024);

Resultaat:

+---------+----------+-----------+-----------+------------+
| LOG2(8) | LOG2(16) | LOG2(128) | LOG2(256) | LOG2(1024) |
+---------+----------+-----------+-----------+------------+
|       3 |        4 |         7 |         8 |         10 |
+---------+----------+-----------+-----------+------------+

Voorbeeld 2 – Negatieve waarde

Hier is een voorbeeld van het doorgeven van een negatieve waarde.

SELECT LOG2(-4);

Resultaat:

+----------+
| LOG2(-4) |
+----------+
|     NULL |
+----------+
1 row in set, 1 warning (0.01 sec)

Dit voorbeeld retourneert een NULL-waarde (en een waarschuwing) omdat het opgegeven argument kleiner is dan 0.0E0.

Voorbeeld 3 – Nul

Hier is een voorbeeld van het doorgeven van nul als argument (we krijgen hetzelfde resultaat als het vorige voorbeeld).

SELECT LOG2(0);

Resultaat:

+---------+
| LOG2(0) |
+---------+
|    NULL |
+---------+
1 row in set, 1 warning (0.00 sec)

Voorbeeld 4 – Uitdrukkingen

U kunt ook uitdrukkingen als deze doorgeven:

SELECT LOG2(2+2);

Resultaat:

+-----------+
| LOG2(2+2) |
+-----------+
|         2 |
+-----------+

MySQL heeft ook de LOG10() functie die de logaritme met grondtal 10 van een waarde retourneert.

Er is ook de LOG() functie (en zijn synoniem LN() ) die de natuurlijke logaritme van een getal retourneert.


  1. Zoek in meerdere tabellen en geef ook de tabelnaam weer in de resulterende rijen

  2. OVER-clausule in Oracle

  3. Psycopg2 verbruikt geheugen bij grote selectiequery's

  4. Hoe de opmerking van een PostgreSQL-database ophalen?