spaço reservado para o nome da tabela - TSQL

Existe uma maneira de fazer algo assim? Pessoas é o nome da tabela.

declare @placeholder varchar(20) = 'People'
select * from @placeholder 

Ou algo assim onde o nome da tabela é People_Backu

declare @placeholder varchar(20) = '_Backup'
select * from People@placeholder 

E existe uma maneira de adicionar no sql dinâmico o valor de uma variável? algo assim

declare @placeholder nvarchar(20) = 'people'
declare @name nvarchar(30) = 'antony'

declare @query nvarchar(1000) = 'select * from ' + @placeholder + ' where 
first_name=' + @name 
exec sp_executesql @query

Quero dizer: sem fazer isso

exec sp_executesql @query, N'@name varchar(30)', @name 

Obrigado pelas respostas

questionAnswers(2)

yourAnswerToTheQuestion