[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: SQL : переписать столбец из одной таблицы в другую
wmk
Господа ... такой вопрос : Как правильно написать запрос чтоб он переписал данные одного столбца в столбец ДРУГОЙ таблицы ??? и можно ли написать такой huh.gif ??? мне кажется что нет ... но хочется верить что ошибаюсь cool.gif



Спустя 2 минуты, 15 секунд (14.10.2009 - 20:47) glock18 написал(а):
смотря что подразумается под "записать". обновление "другой" таблицы или вставка записей?

Спустя 12 минут, 41 секунда (14.10.2009 - 21:00) sergeiss написал(а):
У меня тоже вопросы к автору темы: а зачем нужна такая перезапись? И по какому критерию будет осуществляться связь строк?
А может, на самом деле, надо просто сделать правильную выборку из 2-х таблиц?

Спустя 1 час, 12 минут, 50 секунд (14.10.2009 - 22:12) wmk написал(а):
Хммм да чето я слабинько описал ситуацию rolleyes.gif пардон коллеги !!!

Вообщем
Есть две абсолютно идентичные по структуре таблицы разница лишь в том что в одной более свежие данные (список фирм) и их соответственно больше.

Суть всех телодвижений такова:
У обоих таблиц есть уникатьное значение "ORG_ID" и у каждой фирмы есть владелец ... вот.
Соответственно нужно переписать ( UPDATE ) значения столбца "CRM_Manager" таблицы "Таблица 1" в столбец "CRM_Manager" таблицы "Таблица 2"

В данный момент я просто цыклом пробегаюсь по всем фирмам и переписываю владельцев ... но в идеале хочется все сделать одним запросом biggrin.gif если такое возможно ... я просто не гуру SQL поэтому и решил спросить у тех кто понимает )))

Спустя 8 минут, 12 секунд (14.10.2009 - 22:21) sergeiss написал(а):
Стало понятнее. Но, в то же время, еще менее понятно smile.gif

Вот смотри. Есть у тебя эти 2 таблицы с одинаковой структурой. В одной более свежие данные, чем в другой.
И вот дальше непонятно: то ли ты делаешь эту работу разово, то ли еще как... И почему бы не слить эти таблицы вместе и в дальнейшем не работать с одной таблицей? То есть, мне кажется, у тебя изначально неоптимальна структура БД и работа с ней.

А одним запросом сделать такое обновление не получится (вроде бы smile.gif). Только именно через цикл.

Спустя 15 минут, 49 секунд (14.10.2009 - 22:36) wmk написал(а):
Тут да ... все непростото. Вообщем есть десктопное приложение которое формирует базу в формате Access'a и есть CRM которую писал я , для работы с базой в онлайн.
Обновлять базу приходится ежедневно, подкачивать таблицу Access -> MySQl и переписывать владельцев фирм ... циклом оч долго и муторно smile.gif
Вот и решил оптимизировать процесссс ))))
Но если нет то нет ... все равно спасибо за ответ biggrin.gif

Спустя 7 минут, 8 секунд (14.10.2009 - 22:44) glock18 написал(а):
сабж:

SQL
update table1 as t1
inner join (select id, CRM_Manager from table2) as t2 on t1.id = t2.id
set t1.CRM_Manager = t2.CRM_Manager;


или

SQL
update table1 as t1
inner join table2 as t2 on t1.id = t2.id
set t1.CRM_Manager = t2.CRM_Manager;


Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2024 Invision Power Services, Inc.