I would take the right one for the definitions I get ;) ... as everyone should ...
If I need a MVCC I will take SQL and if I need certain behaviours I will pick the engine.
If I need documents I will use a document based storage system like mongodb, raven or others
If I need a http based database that works functional so I can build a distributed webapp with high concurrency maybe I take couchdb.
If I need a timeline or to get and find connections between things I will take a graph based database.
If I have a lot of data where some entites have data and some don't I will take a column based system.
Every engine and system comes with a price and you have to understand what you're doing.
I will ignore big data like redshift.
Instagram is pgsql, Uber swichted from pgsql to mysql because of the key systems, craigslist uses mongodb, facebook cassandra, .....
there is no real "noSQL" because noSQL != noSQL .... it's a twitter hashtag to my knowledge.
Table-, Graph-, Column-, key-value-, document-, object-based ....
So the starting point is in 90% what tech do you know .... and you grow from there and every religious nut telling you why his tech is the best is probably just ignorant ....
[Edit:] as pointed out it was misspelled (MVVC) this is not an behaviour bound to SQL every major database supports MVCC. The main difference is that SQL tends to prefer consistency over everything. so if there are two concurrent Statements the second one will for sure fail.
I just used it to bring in the broader perspective of what could be used for a decision. This whole list are just random examples which can be represented with almost any other database .... take what you need ...