2013-09-20 3 views
-1

У меня есть эта таблица структуры:несколько таблиц SQL сервера доступа

Product1 , product2, product3....., productn 

с той же колонке:

Item, desc, price 

Я хочу сделать объединение всех этих таблиц: Product1 до productn, как

select item,desc,price 
from (select name from sys.tables) 

или

select item,desc, price 
from (uninon product1 to product n) 

путем параметрирования.

+3

Почему у вас есть n-таблицы с одинаковыми столбцами? Звучит так, как если бы вы использовали внешний ключ для таблицы ProductType. –

+0

Посмотрите на нормализацию http://databases.about.com/od/specificproducts/a/normalization.htm – christiandev

ответ

1

Одним из решений, возможно, является согласование пользовательской строки с выбором. Вы можете фильтровать по имени, чтобы получить таблицы, которые вы не увидите. Например:

declare @qry varchar(max) 
declare @name varchar(200) 
Declare Cursor1 Cursor 
    for 
    SELECT name FROM dbo.tables 
Open Cursor1 
fetch Cursor1 into @name 
while @@fetch_status = 0 
begin 
    -- here concat your query with @name in @qry 
fetch Cursor1 into @name 
end 
Close Cursor1 
Deallocate Cursor1 

exec @qry 
+0

У меня есть несколько таблиц, которые предназначены для разных продуктов familly с тем же столбцом. –

+0

добавьте фильтр в разделе «где» и выберите только те таблицы, которые вам нужны. Для «следующей» ошибки попробуйте это. fetch Cursor1 в @ имя – Federico

+0

большое спасибо за помощь –

Смежные вопросы