Ссылка на источник, если он уникален.Попробуйте что-то вроде этого:
WITH q AS ( INSERT INTO test (name)
SELECT source.name
FROM ( VALUES ('refa', 'name a'), ('refb', 'name b'), ('refc', 'name c')
) AS source (ref, name)
RETURNING * )
SELECT q.id, source.ref
FROM q
JOIN ( VALUES ('refa', 'name a'), ('refb', 'name b'), ('refc', 'name c')
) AS source (ref, name) ON q.name = source.name
Но если вы хотите добавить это отображение в другую таблицу, вы можете подумать о реструктуризации ваших запросов, например:
INSERT INTO mapping ( ref, id )
SELECT source.ref, ( INSERT INTO test (name) VALUES ( source.name ) RETURNING id )
FROM ( VALUES ('refa', 'name a'), ('refb', 'name b'), ('refc', 'name c')
) AS source (ref, name) )