sql >> Databasteknik >  >> RDS >> SQLite

2 sätt att lägga till ett procenttecken till ett tal i SQLite

Här är två sätt att formatera ett tal i procent i SQLite.

Alternativ 1:PRINTF() eller FORMAT() Funktion

Vi kan använda PRINTF() eller FORMAT() funktion för att lägga till procenttecknet till ett tal:

SELECT PRINTF('%2d%%', 17);

Resultat:

17%

När du använder denna funktion har procenttecknet en speciell betydelse i formatsträngen (det indikerar att en substitution följer). Om vi ​​vill att det faktiska procenttecknet ska inkluderas i utdata måste vi använda två procenttecken i formatsträngen.

Här är några fler exempel:

SELECT 
    PRINTF('%02d%%', 3.45) AS "1",
    PRINTF('%2.2f%%', 3) AS "2",
    PRINTF('%1.2f%%', 3.456) AS "3",
    PRINTF('%2.3f%%', 3.456) AS "4";

Resultat:

1    2      3      4     
---  -----  -----  ------
03%  3.00%  3.46%  3.456%

Uppdatera :SQLite 3.38.0 (släppt 22 februari 2022) döpte om PRINTF() funktion till FORMAT() . Den ursprungliga PRINTF() namnet behålls som ett alias för bakåtkompatibilitet.

Därför kan det första exemplet ovan ändras till detta:

SELECT FORMAT('%2d%%', 17);

Resultat:

17%

Alternativ 2:Sammanfoga

Ett annat sätt att göra det är att använda sammanlänkningsoperatorn (|| ) för att sammanfoga siffran med procenttecknet:

SELECT 3.45 || '%';

Resultat:

3.45%

Den kan också arbeta med uttryck som detta:

SELECT (0.045 * 100) || '%';

Resultat:

4.5%

  1. Hur man uppdaterar flera kolumner i PostgreSQL

  2. TO_CHAR(datetime) Funktion i Oracle

  3. Hur avslutar jag ett skript i SQLPlus när ett fel uppstår och återgår till SQLPlus-prompten, utan att koppla bort eller avsluta SQLPlus?

  4. Vilken datamaskeringsfunktion ska jag använda?