Hi i am new to SQL Server and wanted to understand what is mirroring, different types if any and when or what scenario we used mirroring in SQL Server.
Here is the article from Microsoft describing mirroring and the places you would use it. https://docs.microsoft.com/en-us/sql/database-engine/database-mirroring/database-mirroring-sql-server
Mirroring in itself allows for the protection of a single database on a server by having a second copy on different server. These databases can be transactionally in-sync to provide next to zero data loss in the event of a failover. Definitely read the article to see more details and understand the technology more.
Since you tagged 2012, and 2014, I would suggest you look at Always On Availability Groups, as it is similar technology, but enhanced with additional features like automatic failover without a witness, a Listener to facilitate the automatic failover easier for your application. It also provides the ability for multiple secondary replicas, and those can be readable. This helps offload read only queries to a lesser used system allowing better performance for read-write queries.