Есть ли способ указать имя таблицы в виде строки?

Допустим, у меня есть такой запрос:

SELECT * FROM 
(
  SELECT * FROM 
  (
    SELECT * FROM DB.dbo.Table
  )
  INNER JOIN DB.dbo.Table ON ...

Я выполняю этот запрос несколько раз раз с разными таблицами, вручную изменив строку повсюду. Я попытался объявить следующее:

DECLARE @tablename AS VARCHAR(255)
SET @tablename = 'DB.dbo.Table'

Но это, похоже, не работает, так как выдает ошибку, говоря, что мне нужно объявить @tablename как таблицу прежде чем я смогу ее использовать. Как создать шаблон имени моей таблицы и, если это возможно, будет ли Intellisense работать?

6
задан Legend 29 July 2011 в 18:48
поделиться