AdvancedAdvanced PostgreSQL
PostgreSQL: COPY between databases via pipe
The query
SQL
-- Export from source DB
COPY (SELECT emp_id, first_name, last_name, email, salary
FROM employees WHERE status = 'active')
TO '/tmp/employees_export.csv'
WITH (FORMAT csv, HEADER true, DELIMITER ',');
-- Import into target DB (different server)
COPY employees_staging(emp_id, first_name, last_name, email, salary)
FROM '/tmp/employees_export.csv'
WITH (FORMAT csv, HEADER true);
-- Verify import count
SELECT COUNT(*) FROM employees_staging;Note
“COPY (backslash) is psql client-side command. COPY (no backslash) is server-side. Use COPY for remote servers.