I work with about a 600 table 2 TB PostgreSQL database and I started to use DataGrip, when it was in beta, for constructing complex queries. It's quite good for writing larger queries, but also taking auto-generated queries from an ORM and re-formatting them to help with debugging application behavior.
For db-specific operations I still use PostgreSQL's command-line client psql. It's an invaluable tool, but it's really nice to have options.
I also like the ability to pin query results so that I can quickly compare result sets in slightly-modified queries that I'm trying to fix.
Not so great at exploring the schema. Could be that I just didn't learn the tool enough to make that easier.