본문 바로가기

DB관련/SQL

[SQL] FK 뽑는 쿼리


SELECT
 OBJECT_NAME(FC.parent_object_id) AS FROM_TABLE
 , OBJECT_NAME(FC.referenced_object_id) AS TO_TABLE
 , FROM_C.name AS FROM_COLUMN_NAME
 , TO_C.name AS TO_COLUMN_NAME
 , FK_OBJ.name AS FK_NAME
 , FK_OBJ.create_date AS FK_CREATE_DATE
FROM
 SYS.foreign_key_columns FC
 INNER JOIN SYS.columns TO_C ON TO_C.object_id = FC.referenced_object_id AND TO_C.column_id = FC.referenced_column_id
 INNER JOIN SYS.columns FROM_C ON FROM_C.object_id = FC.parent_object_id AND FROM_C.column_id = FC.parent_column_id
 INNER JOIN SYS.objects FK_OBJ ON FK_OBJ.object_id = FC.constraint_object_id
ORDER BY
 OBJECT_NAME(FROM_C.object_id)