I really think Pg is starting to blow Mongo out of the water.
0 : https://github.com/tgriesser/knex 1 : https://github.com/tgriesser/bookshelf
For this, check out the fantastic node-postgres adapter from brianc as well as his node-sql package for authoring SQL statements.
https://github.com/brianc/node-postgres https://github.com/brianc/node-sql
I struggled with the concept of denormalisation, as I came from a hobbyist SQL background, but I managed to build a project based on Mongo and Node (https://rwt.to), and in the process I went from trying very hard to 'make joins work' to hitting the sweet spot of getting my data 'right'. Mongo certainly ain't meant for everything, and I don't know if they'll ever support joins.
The post/pre-save methods are pretty bad ass and there are a few things I still do like about mongo (which is why I chose to explore it initially), but I think for social type websites, a sql solution makes more sense. I also scoped @ http://www.rethinkdb.com/ which looked interesting, but at this time I wanted to go with a more bulletproof solution to my problems.
Supports joins out of the box, and has much saner locking. It is in its infancy still, but I believe are coming out with a LTS release shortly.
Also, it's just fun to work with.