Find tables without foreign keys in SQL Server database

Query below lists all tables that do not have foreign keys.

See also:


select schema_name(fk_tab.schema_id) as schema_name, as table_name,
    '>- no FKs' foreign_keys
from sys.tables fk_tab
    left outer join sys.foreign_keys fk
        on fk_tab.object_id = fk.parent_object_id
where fk.object_id is null
order by schema_name(fk_tab.schema_id),


  • schema_name - table schema name
  • table_name - table name
  • foreign_keys - symbol indicating lack of FKs


  • One row represents one table that doesn't have a foreign key
  • Scope of rows: all tables in a database that don't have foreign keys (do not refer to other tables)
  • Ordered by schema and table name

Sample results

List of tables in AdventureWorks without foreign keys:

There are no comments. Click here to write the first comment.