>데이터 베이스 >MySQL 튜토리얼 >SQL에서 외래 키 관계를 어떻게 쿼리할 수 있나요?

SQL에서 외래 키 관계를 어떻게 쿼리할 수 있나요?

DDD
DDD원래의
2025-01-16 22:25:41222검색

How Can I Query Foreign Key Relationships in SQL?

SQL에서 외래 키 정보 검색

외래 키 종속성을 이해하는 것은 데이터베이스 스키마 관리에 매우 중요합니다. SQL은 information_schema 데이터베이스 메타데이터 테이블

을 사용하여 이 정보를 추출하는 간단한 방법을 제공합니다.

특정 테이블과 관련된 모든 외래 키를 나열하려면 다음 쿼리를 사용하세요.

<code class="language-sql">SELECT
    tc.table_schema,
    tc.constraint_name,
    tc.table_name,
    kcu.column_name,
    ccu.table_schema AS foreign_table_schema,
    ccu.table_name AS foreign_table_name,
    ccu.column_name AS foreign_column_name
FROM information_schema.table_constraints AS tc
JOIN information_schema.key_column_usage AS kcu
    ON tc.constraint_name = kcu.constraint_name
    AND tc.table_schema = kcu.table_schema
JOIN information_schema.constraint_column_usage AS ccu
    ON ccu.constraint_name = tc.constraint_name
WHERE tc.constraint_type = 'FOREIGN KEY'
    AND tc.table_schema = 'myschema'
    AND tc.table_name = 'mytable';</code>

'myschema''mytable'를 각각 원하는 스키마 및 테이블 이름으로 바꾸세요.

특정 테이블을 외래 키로 참조하는 모든 테이블을 찾으려면 WHERE 절을 조정하면 됩니다.

<code class="language-sql">WHERE tc.constraint_type = 'FOREIGN KEY'
    AND ccu.table_schema = 'myschema'
    AND ccu.table_name = 'mytable';</code>

이 수정된 쿼리는 mytablemyschema을 외래 키로 활용하는 모든 테이블을 반환합니다.

위 내용은 SQL에서 외래 키 관계를 어떻게 쿼리할 수 있나요?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.