Вот для чего with ordinality
:
select rownum, expr
from regexp_split_to_table ('a,b,c,d,e,f',',') with ordinality as t(expr, rownum)
rownum ("ординальность") - это "индекс" этого элемента в результате regexp_split_to_table
Обратите внимание, что использование string_to_array()
с unnest
обычно быстрее, поскольку регулярные выражения довольно дороги:
select rownum, expr
from unnest(string_to_array('a,b,c,d,e,f',',')) with ordinality as t(expr, rownum)