It seems they have changed their pricing strategy:
Oracle: What is your IT budget? We'll take it. (all of it)
Microsoft: Hey, at least we're not as bad as Oracle.If you're a tiny startup, the differences won't amount to all that much, and it will be hard to justify MSSQL's price tag, which is fine, because, yeah, you can't afford it, anyway. If you're an enterprise or otherwise have large database needs, the differences can very quickly become apparent, and easily worth the money.
By far, PostgreSQL has more knowledge sharing and documented edge cases. Not to mention that the official PostgreSQL documentation is probably one of the best documented software systems ever. This makes PostgreSQL a lot easier to learn and use and that also affects the amount of money you need to spend.
SQL Server has some annoying edge cases, licensing is a real pain point these days, but so are the technical issues like lack of schema support in the JDBC driver. Other things are that you cannot pipe the backup. I would love to take backup of an Azure SQL service to my local machine with SSH.
The only thing SQLServer has over PostgreSQL is multiply resultsets. That’s it. I really wish that existed in PostgreSQL to prevent round trips.
I've worked in both MSSQL shops and PostgreSQL shops, and, while I wasn't in charge of the budget, I wouldn't be at all surprised to find out that, once you factor paying your programmers and DBAs for their time into the equation, the MSSQL shop ended up having lower overall costs associated with its choice of DBMS.