Запрос всех таблиц в БД - PullRequest
0 голосов
/ 24 марта 2011

Я использую SQL Server 2005. У меня сейчас особая потребность.

У меня есть база данных, и у нее, в свою очередь, несколько таблиц (> 50). Все эти таблицы имеют аналогичный именованный столбец с условием . Я хочу запросить этот столбец по всем таблицам в БД.

Я не нахожу правильного решения в Google. Пожалуйста, помогите мне.

Заранее большое спасибо:)

Ответы [ 3 ]

0 голосов
/ 24 марта 2011

Используя предложение Кевина, вы делаете что-то вроде этого, а затем выполняете его вывод.

DECLARE @ColumnName AS VARCHAR(20)
SET @ColumnName = 'MyColumn'

SELECT 'SELECT ' + @ColumnName + ' FROM ' + TABLE_NAME FROM information_schema.tables
0 голосов
/ 24 марта 2011
sp_msforeachtable @command1=N'SELECT ''?'', * from ? WHERE yourcol=''whatever'''

Выше будет выполнен запрос к каждой таблице в выбранной базе данных, и выведите имя таблицы + каждый столбец в таблице для выполнения условий. Если он достигнет таблицы с недопустимым столбцом, он просто продолжит работу (но выведет сообщение об ошибке).

0 голосов
/ 24 марта 2011

Может быть, это может вам помочь?

SELECT * FROM information_schema.tables

После этого вы можете просмотреть все таблицы и выполнить запрос к вашему столбцу.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...