sql-server - khan - sql 임시테이블




SQL Server 데이터베이스의 테이블 수 계산 (2)

이 질문에는 이미 답변이 있습니다.

MyDatabase 라는 SQL Server 2012 데이터베이스가 있습니다. 데이터베이스에있는 테이블의 수를 찾는 방법은 무엇입니까?

나는 쿼리의 형식이 다음과 같을 것이라고 가정하지만 database_tables 를 무엇으로 대체해야할지 모르겠다.

USE MyDatabase
SELECT COUNT(*)
FROM [database_tables]

이 시도:

SELECT Count(*)
FROM <DATABASE_NAME>.INFORMATION_SCHEMA.TABLES
WHERE TABLE_TYPE = 'BASE TABLE'

INFORMATION_SCHEMA.TABLES 를 사용하여 데이터베이스 테이블에 대한 INFORMATION_SCHEMA.TABLES 를 검색 할 수 있습니다.

Microsoft 테이블 문서 에서 언급 한 바와 같이 :

INFORMATION_SCHEMA.TABLES 는 현재 사용자에게 권한이있는 현재 데이터베이스의 각 테이블에 대해 하나의 행을 반환합니다.

따라서 다음 쿼리는 지정된 데이터베이스의 테이블 수를 반환합니다.

USE MyDatabase
SELECT COUNT(*)
FROM INFORMATION_SCHEMA.TABLES
WHERE TABLE_TYPE = 'BASE TABLE'

SQL Server 2008에서는 sys.tables 를 사용하여 테이블 수를 계산할 수도 있습니다.

Microsoft sys.tables 문서에서 :

sys.tables 는 SQL Server의 각 사용자 테이블에 대한 행을 반환합니다.

다음 쿼리는 데이터베이스의 테이블 수를 반환합니다.

SELECT COUNT(*)
FROM sys.tables




sql-server-2012