Здравствуйте,мне нужно вывести данные из нескольких таблиц в основную пустую

мне нужно вывести данные из нескольких таблиц в основную пустую,пытался сделать через where но все попытки тщетны,предполагаю что можно сделать через оператор insert into и через join,можете подсказать как можно это реализовать?


Ответы (1 шт):

Автор решения: S.H.

У Вас есть две схемы вывода данных.

  1. Вы отдаёте SQL серверу команду "возьми данные отсюда и вставь их сюда". И он всё делает.

Это именно то, что Вы пытались сделать при помощи комдинации insert into ... select . Операция довольно простая, но нужно точное соответствие списка полей, котрые в INSERT и тех, которые в SELECT - частях этого выражения. И еще с identity - полями надо будет немного повозиться.

Преимущества: долго писать, быстро работает. Но метод не очень гибкий: какие то сложные преобразования данных так не сделать.

  1. Вы все данные пропускаете через свою C# - программу. То есть, каждая строчка из SELeCT - части приходит в программу, в некотрый набор переменных. Потом из этого набора вы создаёте INSERT - выражение, и заполняете его данными.

Писть не сложно, но рабтает ораздо медленнее, так как все данные проходят через программу. Гибкость - необыкновенная, с данными в программе можно сделать вообще что угодно

я мог бы привести придуманный пример, но, мне кажется, и ак всё понятно. Вы можете задать вопрос в комментариях, или дать свой пример данных, котрые Вы хотите переносить.

→ Ссылка