In PostgreSQL kunnen we de initcap()
. gebruiken functie om een reeks tekst op te maken met hoofdletters. Dat wil zeggen, het converteert de eerste letter van elk woord naar hoofdletters en de rest naar kleine letters.
Syntaxis
De syntaxis gaat als volgt:
initcap ( text )
Waar text
is de tekst die moet worden omgezet in hoofdletters.
Voorbeeld
SELECT initcap('Bay of pigs');
Resultaat:
Bay Of Pigs
Hier is een voorbeeld dat begint met alleen hoofdletters:
SELECT initcap('PRACHUAP KHIRI KHAN');
Resultaat:
Prachuap Khiri Khan
Woorden zijn reeksen van alfanumerieke tekens, gescheiden door niet-alfanumerieke tekens:
SELECT
initcap('shrink-wrap') AS "1",
initcap('shrink.wrap') AS "2",
initcap('shrink,wrap') AS "3";
Resultaat:
+-------------+-------------+-------------+ | 1 | 2 | 3 | +-------------+-------------+-------------+ | Shrink-Wrap | Shrink.Wrap | Shrink,Wrap | +-------------+-------------+-------------+
Cijfers zijn alfanumeriek, dus het hoofdlettergebruik van volgende woorden hangt af van het feit of er al dan niet een ander teken is dat niet-alfanumeriek is:
SELECT
initcap('shrink1wrap') AS "1",
initcap('shrink1 wrap') AS "2";
Resultaat:
+-------------+--------------+ | 1 | 2 | +-------------+--------------+ | Shrink1wrap | Shrink1 Wrap | +-------------+--------------+
Databasevoorbeeld
Hier is een voorbeeld van het converteren van de resultaten van een databasequery naar initiële hoofdletters:
SELECT
title,
initcap(title)
FROM film
LIMIT 10;
Resultaat:
+------------------+------------------+ | title | initcap | +------------------+------------------+ | ACADEMY DINOSAUR | Academy Dinosaur | | ACE GOLDFINGER | Ace Goldfinger | | ADAPTATION HOLES | Adaptation Holes | | AFFAIR PREJUDICE | Affair Prejudice | | AFRICAN EGG | African Egg | | AGENT TRUMAN | Agent Truman | | AIRPLANE SIERRA | Airplane Sierra | | AIRPORT POLLOCK | Airport Pollock | | ALABAMA DEVIL | Alabama Devil | | ALADDIN CALENDAR | Aladdin Calendar | +------------------+------------------+
Hier gebruikte ik de pagila
voorbeelddatabase. Deze database slaat filmnamen op in hoofdletters in de title
kolom. In dit geval gebruikte ik de initcap()
functie om de title
. te converteren kolom om hoofdletters te gebruiken.