Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Microsoft SQL Server Новый топик    Ответить
 Как в одну таблицу добавить записи из другой, если они имеют разную структуру  [new]
Alex1977
Member

Откуда:
Сообщений: 5
Есть таблица, в которой хранятся базовые данные, из другой таблицы данные в нее нужно добавлять. Причем структура таблиц не совпадает. Помогите написать запрос, пожалуйста. И еще. Обязательно ли для решения такой задачи использовать курсор?
4 окт 09, 22:38    [7740062]     Ответить | Цитировать Сообщить модератору
 Re: Как в одну таблицу добавить записи из другой, если они имеют разную структуру  [new]
Alex1977
Member

Откуда:
Сообщений: 5
Важное дополнение, необходмые для щанесения во вторую таблицу записи могут совпалать, тогда их заносить в таблицу не надо, чтобы не было повторений.
4 окт 09, 22:53    [7740097]     Ответить | Цитировать Сообщить модератору
 Re: Как в одну таблицу добавить записи из другой, если они имеют разную структуру  [new]
Александр Волок (def1983)
Member

Откуда: Rotterdam
Сообщений: 4959
Если SQL Server>=2005
create table tab1 (field1, field2, field3)

create table tab2 (field1, field2)

insert tab2
select field1, field2 from tab1
except
select field1, field2 from tab2
4 окт 09, 23:05    [7740123]     Ответить | Цитировать Сообщить модератору
 Re: Как в одну таблицу добавить записи из другой, если они имеют разную структуру  [new]
Alex1977
Member

Откуда:
Сообщений: 5
Еще одно дополнение. Записи в таблицах могут совпадать частично. Тогда эти частично совпадающие записи не нужно добавлять.
В таблице 1 такие поля: дата_замера, время_замера, замер.
Во второй таблице поля: дата, время, замер, доп_информация.
Так вот, если совадения есть по полю дата и время с дата_замера и время_замера, то добавляьб запись не надо. А лучше всего такую запись обновлять, чтобы не было дубликатов записей. как все таки это все реализовать, помогите.
4 окт 09, 23:15    [7740160]     Ответить | Цитировать Сообщить модератору
 Re: Как в одну таблицу добавить записи из другой, если они имеют разную структуру  [new]
iljy
Member

Откуда:
Сообщений: 8711
Alex1977,

update tab1 set замер = tab2.замер
from tab1 join tab2 on дата_замера = дата and время_замера = время


insert tab1
select дата, время, замер
from tab2
where not exists(
  select * from tab1
  where дата_замера = дата and время_замера = время
)

5 окт 09, 00:19    [7740333]     Ответить | Цитировать Сообщить модератору
 Re: Как в одну таблицу добавить записи из другой, если они имеют разную структуру  [new]
Alex1977
Member

Откуда:
Сообщений: 5
iljy,
спасибо огромное. Помогло!
5 окт 09, 00:29    [7740363]     Ответить | Цитировать Сообщить модератору
Все форумы / Microsoft SQL Server Ответить