I'm assuming from context that you mean MySQL when you wrote "SQL"
First of all Postgres isn't better than MySQL, but it does a few things better.
PostgreSQL is more compliant with the SQL standard if that is important to you. MySQL has, at least in the past, done certain unexpected non-standard things that could cause silent turncations and data type changes that could lead to data loss.
PostgreSQL is ACID compliant out of the box, whereas MySQL requires the use a of specific data store to get ACID compliance.
PostgreSQL and MySQL offer different replication options. Which one is best is dependent on your needs
Performance wise they're about the same in aggregate, but differ quite a bit in specific cases. Very simply you can probably say that PostgreSQL is faster for complex queries over large complex data, while MySQL is faster for simpler queries over more homogeneous data, but YMMV big time.
PostgreSQL supports more 'exotic' data types like key-value HSTOREs and indexed JSON data. It also makes it a lot easier to create your own custom data types and indexes if you want to.
And related to the above PostgreSQL with PostGIS gives you world class support for storing and querying geometric and geographic data, far beyond what MySQL can offer.