List all tables referenced by a specific table (by FK) in Azure SQL Database

The query below lists all tables referenced with a foreign key per specific table.

Query

select distinct
    schema_name(fk_tab.schema_id) + '.' + fk_tab.name as foreign_table,
    '>-' as rel,
    schema_name(pk_tab.schema_id) + '.' + pk_tab.name as primary_table
from sys.foreign_keys as fk
    inner join sys.tables as fk_tab
        on fk_tab.object_id = fk.parent_object_id
    inner join sys.tables as pk_tab
        on pk_tab.object_id = fk.referenced_object_id
where fk_tab.[name] = 'Your table' -- enter table name here
--  and schema_name(fk_tab.schema_id) = 'Your table schema name'
order by schema_name(fk_tab.schema_id) + '.' + fk_tab.name,
    schema_name(pk_tab.schema_id) + '.' + pk_tab.name

Columns

  • foreign_table - foreign table name with schema name - the table you provided as a parameter
  • foreign_table - relationship symbol implicating FK and direction
  • primary_table - primary (referenced) tables names with schema name - the tables you are looking for

Rows

  • One row: represents one referenced table
  • Scope of rows: all tables referenced by the table that has the provided name (and optionally the schema)
  • Ordered by: referenced table schema and name

Notes

  • There can be more tables with the same name. If that's the case, uncomment the where clause and provide a schema name

Sample results

All tables referenced with FK by Product table in the AdventureWorksLT database.

Comments are only visible when the visitor has consented to statistics cookies. To see and add comments please accept statistics cookies.
0
There are no comments. Click here to write the first comment.