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:

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