sql >> Database >  >> RDS >> PostgreSQL

Sjabloonpatronen en -modificaties voor numerieke opmaak in PostgreSQL

Deze pagina bevat de volledige lijst met sjabloonpatronen en sjabloonpatroonaanpassers die kunnen worden gebruikt bij het opmaken van getallen in PostgreSQL.

Sjabloonpatronen

De volgende tabel bevat alle sjabloonpatronen die kunnen worden gebruikt voor numerieke opmaak in Postgres.

Patroon Beschrijving
9 Cijferpositie (kan worden verwijderd indien onbeduidend). Als het cijfer een voorloopnul is, wordt het vervangen door een spatie. Als het een volgnul is en de vulmodus is opgegeven (d.w.z. FM ) dan wordt het verwijderd.
0 Cijferpositie (wordt niet verwijderd, zelfs niet als deze onbeduidend is). Dit betekent dat de cijferpositie altijd wordt afgedrukt, zelfs als deze een voorloop-/achterloopnul bevat.
. (periode) Decimaal punt. Negeert landinstelling.
, (komma) Groepsscheidingsteken (duizenden). Negeert landinstelling.
PR Negatieve waarde tussen punthaken.
S Teken verankerd aan nummer (gebruikt landinstelling). Als S verschijnt net links van een of meer 9 s, wordt het bord aan het nummer verankerd.
L Valutasymbool (gebruikt landinstelling).
D Decimaal punt (gebruikt landinstelling).
G Groepsscheidingsteken (gebruikt landinstelling).
MI Minusteken op gespecificeerde positie (indien getal <0). Niet verankerd aan het nummer.
PL Plusteken op gespecificeerde positie (indien getal> 0). Niet verankerd aan het nummer. Dit is een Postgres-extensie.
SG Plus/minteken op gespecificeerde positie. Niet verankerd aan het nummer. Dit is een Postgres-extensie.
RN Romeins cijfer (invoer tussen 1 en 3999).
TH of th Suffix van volgnummer. Deze converteren geen waarden kleiner dan nul en ze converteren geen fractionele getallen. Dit zijn PostgreSQL-extensies.
V Gespecificeerd aantal cijfers verschuiven. Bij gebruik met to_char() , dit vermenigvuldigt de invoerwaarden met 10^n , waar n is het aantal cijfers na V . Bij gebruik met to_number() , het verdeelt zich op een vergelijkbare manier. Beide to_char() en to_number() ondersteunen het gebruik van V . niet gecombineerd met een decimaalteken (bijv. 99.9V99 is niet toegestaan).
EEEE Exponent voor wetenschappelijke notatie. Kan niet worden gebruikt in combinatie met een van de andere opmaakpatronen of modifiers, behalve cijfers en decimale puntpatronen, en moet aan het einde van de opmaakreeks staan ​​(bijv. 9.99EEEE is een geldig patroon).

Opmerkingen:

  • Beide 0 en 9 zijn equivalent bij gebruik met de to_number() functie.
  • Bij gebruik van de to_number() functie, als niet-gegevenssjabloonpatronen zoals L of TH worden gebruikt, wordt het overeenkomstige aantal invoertekens overgeslagen, ongeacht of ze overeenkomen met het sjabloonpatroon, tenzij het gegevenstekens zijn (d.w.z. cijfers, teken, decimaalteken of komma). Bijvoorbeeld TH zou twee niet-gegevenstekens overslaan.

Sjabloonpatroonmodificaties

De volgende modificaties kunnen worden toegepast op de bovenstaande sjabloonpatronen om het resultaat te wijzigen.

Modificatie Beschrijving
FM voorvoegsel Vulmodus (onderdruk nullen en opvulspaties).
TH achtervoegsel Suffix van hoofdletters. Converteert geen waarden kleiner dan nul en converteert geen fractionele getallen. Dit is een Postgres-extensie.
th achtervoegsel Suffix van het rangtelwoord in kleine letters. Converteert geen waarden kleiner dan nul en converteert geen fractionele getallen. Dit is een Postgres-extensie.

Merk op dat de eerste wordt toegevoegd als een voorvoegsel aan het sjabloonpatroon en de andere twee als een achtervoegsel.

Voorbeeld

Hier is een snel voorbeeld dat zowel een sjabloonpatroon als een modifier bevat.

SELECT to_char(1, '9th');

Resultaat:

1st

In dit geval is de 9 was voor het nummer (1 ), en de th werd gebruikt om de ordinale indicator toe te voegen (in dit geval st ).


  1. Onbewerkte SQL-querystring ophalen uit door PDO voorbereide instructies

  2. Hoe kan ik (hoofdletterongevoelig) in een kolom zoeken met LIKE-wildcard?

  3. Relationele databases

  4. Functie om het aantal weekdagen tussen twee datums te krijgen, exclusief feestdagen