Referencia de funciones

REGEXP_SPLIT_TO_TABLE

Divide una cadena según una expresión regular y devuelve cada parte como una fila aparte.

PostgreSQL 17.9
REGEXP_SPLIT_TO_TABLE(string, pattern[, flags])
  • [ ]parte opcional
string
Cadena de origen
text
pattern
Expresión regular para el separador
text
flags
Indicadores, por ejemplo i para no distinguir mayúsculas y minúsculas
textOpcional
bceimnpqstwx

Valor devuelto

Conjunto de valores text, una fila por parte; también se devuelven las partes vacías entre separadores contiguos y en los extremos

Ejemplos

Lista con separadores distintos

PostgreSQL 17.9
SELECT REGEXP_SPLIT_TO_TABLE('sql, python;java', '[,;] *');
regexp_split_to_table
sql
python
java

Nombres de los miembros de la familia por palabras

PostgreSQL 17.9
SELECT member_name,
	REGEXP_SPLIT_TO_TABLE(member_name, ' ') AS name_part
FROM FamilyMembers;
member_namename_part
Headley QuinceyHeadley
Headley QuinceyQuincey
Flavia QuinceyFlavia
Flavia QuinceyQuincey
Andie QuinceyAndie
Andie QuinceyQuincey
Lela QuinceyLela
Lela QuinceyQuincey
Annie QuinceyAnnie
Annie QuinceyQuincey

Detalles

La función devuelve un conjunto de filas, así que en SELECT multiplica una fila de la tabla, una por cada parte. Para obtener las partes como array, usa REGEXP_SPLIT_TO_ARRAY, y para dividir por un separador simple sin patrón, STRING_TO_TABLE.

Véase también