Er is geen native functie met dergelijke functionaliteit, maar u kunt regexp_split_to_table
. gebruiken om dit als volgt te doen:
select theword
from (select regexp_split_to_table('banana',E'(?=.)') theword) tab
order by theword;
Het resultaat is:
theword
a
a
a
b
n
n
Deze (?=.)
wordt gesplitst door elk teken en laat het teken als scheidingsteken achter. Het zal ook ruimtes identificeren. Als je een woord met spaties hebt en het niet wilt (de spatie), gebruik dan E'(\\s*)'
komt overeen met elk witruimteteken. Ik weet niet meer wat de E
middelen. Ik zal het antwoord zo snel mogelijk zoeken en bewerken.
Zoals uitgelegd in de DOC's in de sectie "regexp_split_to_table"
EDIT:Zoals ik al zei:de betekenis van de E
voor de string kun je hier zien:Wat is de " E" voor een Postgres-tekenreeks?