그럼 내가 다음과 같은 해결책을 마련했습니다 Pure sql
당신이 생각하는 일에 따라 달라집니다. 그것은 순전히 T-SQL로 작성하지만, 동적 변경 사항은 주석에 설명 가능한 결함이있는 경우를 고려
쿼리
-- Using variables just for better readability.
DECLARE @Name NVARCHAR(4000)
DECLARE @Schema NVARCHAR(4000)
DECLARE @Query NVARCHAR(4000)
-- Get the relevant data
SET @Schema = QUOTENAME(OBJECT_SCHEMA_NAME(613577224))
SET @Name = QUOTENAME(OBJECT_NAME(613577224))
-- Build query taking into consideration the schema and possible poor object naming
SET @Query = 'SELECT COUNT(*) FROM ' + @Schema + '.' + @Name + ''
-- execute it.
EXEC(@Query)
편집을 내장 사용합니다.
나는이 방법이 나에게 편리한 접근법이기 때문에 변수를 설명했다. 건배.
어쨌든 나는 모든 경우에'sp_executesql'을 사용할 것입니다. 또한 'COUNT (*)'대신에 'EXISTS'를 사용하는 것뿐만 아니라 두 가지 옵션에 +1 또한 ... –
와우 - 첫 번째 솔루션은 어떻게 작동합니까? 어떤 종류의 인덱스에서 행 수를보고 있습니다. 그래서 특정 파일 그룹의 행을 추측하고 있습니다. 또는 ...? 왜 정확하지 않을까요? 두 번째 것보다 더 단순 해 보입니다. 그게 제가 사용할 것입니다 - 고마워요! –
@EamonNerbonne - 100 % 정확함을 보장하지 않습니다. 커밋되지 않은 트랜잭션의 영향을 포함하며 [수동으로 업데이트 할 수 있습니다] (http://sqlblog.com/blogs/ben_nevarez/archive/2010/01/13/fooling-the-query-optimizer.aspx) 동기화를 벗어날 수 있습니다. 때로는 DBCC UPDATEUSAGE로 수정해야합니다 (정확한시기는 확실하지 않습니다). –