PostgreSQL
 sql >> Database >  >> RDS >> PostgreSQL

regexp_split_to_table e row_number

Se non hai bisogno di una regex, è più efficiente usare string_to_array() invece di regexp_split_to_table() . Per ottenere l'indice dell'array, usa with ordinality

select t.id, 
       x.idx,
       x.word
from the_table t, 
     unnest(string_to_array(string_data, ';')) with ordinality as x(word, idx)
order by t.id, x.idx;