Если вы можете принять получение данных, которые вы хотите объединить в те же строки, это может быть простое объединение.
SELECT ntl.id, ntl.transaction_date, ntl.amount, ntl_next.id, ntl_next.transaction_date, ntl_next.amount
FROM nominal_transaction_lines ntl
LEFT OUTER JOIN nominal_transaction_lines ntl_next ON ntl_next.id = ntl.id + 1
WHERE ntl.courier_information = 468323802;
Если вам нужно, чтобы они были отдельными строками, но в одном наборе результатов,Вы можете использовать CTE
WITH base AS (
SELECT ntl.id, ntl.transaction_date, amount
FROM nominal_transaction_lines ntl
WHERE ntl.courier_information = 468323802
)
SELECT b.id, b.transaction_date, b.amount
FROM base b
UNION
SELECT ntl_next.id, ntl_next.transaction_date, ntl_next.amount
FROM base b
INNER JOIN nominal_transaction_lines ntl_next on ntl_next.id = b.id + 1;
Я бы порекомендовал первый подход, если он соответствует вашим потребностям, потому что он намного проще.