sql >> Database >  >> RDS >> Mysql

FORMAT() Voorbeelden in MySQL

In MySQL is de FORMAT() functie retourneert een getal dat is opgemaakt met een gespecificeerd aantal decimalen.

Het bevat scheidingstekens voor groepen en een decimaal scheidingsteken waar van toepassing.

Syntaxis

De syntaxis gaat als volgt:

FORMAT(X,D[,locale])

Waar:

  • X is het getal dat moet worden opgemaakt.
  • D is het aantal decimalen waarop u het getal wilt afronden.
  • locale is een optioneel argument dat aangeeft welke opmaakconventies voor landinstellingen moeten worden gebruikt.

Voorbeeld

Hier is een voorbeeld om te demonstreren:

SELECT FORMAT(123456.789, 2);

Resultaat:

123,456.79

Hier werd het getal afgerond op twee decimalen (omdat ik 2 heb opgegeven) als tweede argument). In dit geval werd het decimale deel naar boven afgerond.

Het getal kreeg ook een komma als groepsscheidingsteken en een punt/punt als decimaalteken scheidingsteken.

Verwijder het fractionele deel

U kunt 0 . gebruiken als tweede argument om breuken te verwijderen:

SELECT FORMAT(123456.789, 0);

Resultaat:

123,457

Decimale plaatsen toevoegen

U kunt decimalen toevoegen door een tweede argument te gebruiken dat een groter getal is dan het aantal decimalen in het op te maken getal:

SELECT FORMAT(123456.789, 6);

Resultaat:

123,456.789000

Dit kan worden gebruikt om een ​​fractioneel deel toe te voegen aan gehele getallen:

SELECT FORMAT(123456, 2);

Resultaat:

123,456.00

Negatieve getallen

De functie werkt net zo goed op negatieve getallen:

SELECT FORMAT(-123456.789, 2);

Resultaat:

-123,456.79

Lokaal

Hier is een voorbeeld om te laten zien hoe het derde argument werkt:

SELECT FORMAT(123456.789, 2, 'de_DE');

Resultaat:

123,456.79

In dit voorbeeld heb ik opgegeven dat de landinstelling de_DE . is , wat voor Duits is. De opmaakconventies schrijven daarom voor dat de komma wordt gebruikt voor het decimale scheidingsteken en de punt/punt wordt gebruikt voor het scheidingsteken voor duizendtallen.

Het derde argument kan elk van de waarden zijn die worden ondersteund door de lc_time_names systeemvariabele.


  1. OracleDataSource versus Oracle UCP PoolDataSource

  2. 'Tijd'-opslaggrootte in SQL Server begrijpen

  3. Waarom zou ik int gebruiken in plaats van een byte of short in C#

  4. Een groot probleem:SQL Server 2016 Service Pack 1