Tom Kyte bietet dafür eine sehr bequeme Möglichkeit und funktioniert ab Oracle 9i mit einer benutzerdefinierten Aggregationsfunktion. Es wird mit Kommas aggregiert, aber Sie können den Funktionskörper für Pipes ändern.
Ab Oracle 11g können Sie:
SELECT LISTAGG(column, separator) WITHIN GROUP (ORDER BY field)
FROM dataSource
GROUP BY grouping columns
Diese Webseite bietet zusätzliche Methoden, einschließlich der von Ihnen aufgelisteten und die tatsächlich nicht wirklich effizient ist.