The query below lists all primary keys constraints (PK) in the database.
See also: tables with their primary keys.
Query
select schema_name(tab.schema_id) as [schema_name],
    pk.[name] as pk_name,
    substring(column_names, 1, len(column_names)-1) as [columns],
    tab.[name] as table_name
from sys.tables as tab
    inner join sys.indexes as pk
        on tab.object_id = pk.object_id
        and pk.is_primary_key = 1
    cross apply (select col.[name] + ', '
                from sys.index_columns as ic
                    inner join sys.columns as col
                        on ic.object_id = col.object_id
                        and ic.column_id = col.column_id
                where ic.object_id = tab.object_id
                        and ic.index_id = pk.index_id
                order by col.column_id
                    for xml path ('') ) D (column_names)
order by schema_name(tab.schema_id),
    pk.[name]
Columns
- schema_name - PK schema name
- pk_name - PK constraint name
- columns - list of PK columns separated with ','
- table_name - PK table name
Rows
- One row: represents one primary key (table) in a database
- Scope of rows: all PK constraints in a database
- Ordered by: schema, PK constraint name
Sample results

 
                                                                     
                                                                     
                                                                     
                                                                     
                                                                     
                                                                     
                                                                     
                                                                     
                                                                     
                                                                     
                                                                     
                                                                     
                                                                     
                                                                     
                                                                     
                                                                     
                                                                     
                                                                 
                                                             
                                                             
                                                             
                                                             
                                                                 
                                                             
                                                             
                                                                 
                                                             
                                                             
                                                             
                                                             Rene Castro
                                                                        Rene Castro
                                 Azure SQL Database
                                                                Azure SQL Database
                                 SQL Server
                                                                                                SQL Server
                                             Oracle database
                                                                                                Oracle database
                                             Snowflake
                                                                                                Snowflake
                                             IBM Db2
                                                                                                IBM Db2
                                             PostgreSQL
                                                                                                PostgreSQL
                                             MySQL
                                                                                                MySQL
                                             MariaDB
                                                                                                MariaDB