Apportioning usage of PostgreSQL WAL to database/table/query
If you are using PostgreSQL v13, you can install pg_stat_statements, which logs the amount of WAL per statement in the wal_bytes column. So you could run
CREATE EXTENSION IF NOT EXISTS pg_stat_statements;

SELECT wal_bytes, calls, query
FROM pg_stat_statements
ORDER BY wal_bytes DESC
LIMIT 10;

The WAL itself has no connection to a certain SQL statement, but if you examine the entries with pg_waldump, you can connect them to certain files, which correspond to database objects. That route is cumbersome.
Upgrade to v13.