a_201712

a_201801

이런식으로 DB가 있는데,

매달 거기서 값을 받아와야하는데 DB명이 바뀌니

declare @MDate varchar(6)

declare @total int


set @MDate = (convert(varchar(6),getdate()-1,112)) (매월 1일날 전달 데이터 결산하는거라 이렇게 하면 전달인 2017_12 이렇게 찍힙니다)

@total에 a_201712.dbo.x 테이블의 어떤 값을 연산해서 가져와야하는데

제가 @db varchar(15)

set @db='a_'+@mdate+'..x where a=100'

이렇게 했더니 @db에는 a_201712..x where a=100

이렇게 들어가져서,

select @total=count(distinct id) from @db 이렇게 하고싶은데ㅠ

선언이 안되었다며

Must declare the table variable "@db".

라고 에러문구가 나네요..

어떻게 해야 할까요ㅠㅠ