Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Web программирование > SQL, базы данных
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 14.09.2012, 20:39   #1
Orionic
Пользователь
 
Регистрация: 21.07.2011
Сообщений: 11
По умолчанию Sql запрос

Доброго времени суток. Интересует вопрос вот такой: есть 2 базы, в них 2 таблицы, они одинаковые, НО в них разные данные в одном поле.
Т.е. в базе1 стоимость товара равна 40, в базе2 стоимость 60. все значения имеют уникальные ентри, т.е если в базе1 есть ентри 100, то и в базе2 есть тоже 100, но в них отличается значение цены.

Суть вопрос. Как сделать множество запросов для изменения, типо такого:
update товар set цена = 600 where ид = 1;
update товар set цена = 500 where ид = 2;
update товар set цена = 660 where ид = 3;
update товар set цена = 120 where ид = 4;

Изменить нужно строго в базе2 на значение из базы1.

чтобы не делать это вручную, надо чтобы это сделал мускул. Возможно ли вообще такое??

p.s. запрос на нахождение разницы есть.
Orionic вне форума Ответить с цитированием
Старый 14.09.2012, 21:33   #2
Аватар
Старожил
 
Аватар для Аватар
 
Регистрация: 17.11.2010
Сообщений: 18,922
По умолчанию

Если таблицы в одной базе и ид уникально в каждой из таблиц, то примерно так. Для разных баз для мускула не ведаю. Ксли есть аналог прилинкованных баз, то использовать его
Код:
UPDATE Tаблица2
  SET цена=(SELECT Tаблица1.цена FROM Tаблица1 WHERE Tаблица1.ид=Tаблица2.ид)
  WHERE EXISTS(SELECT * FROM Tаблица1 WHERE Tаблица1.ид=Tаблица2.ид AND Tаблица1.цена<>Tаблица2.цена)
ADD

Подглядел - если на одном серваке то к таблицам можно обращаться База1.Таблица1 и База2.Таблица2
Если бы архитекторы строили здания так, как программисты пишут программы, то первый залетевший дятел разрушил бы цивилизацию

Последний раз редактировалось Аватар; 14.09.2012 в 21:46.
Аватар вне форума Ответить с цитированием
Старый 14.09.2012, 23:13   #3
ADSoft
Старожил
 
Регистрация: 25.02.2007
Сообщений: 4,158
По умолчанию

а чтоб такое происходило в постоянном режиме при изменении одной из баз - можно использовать триггеры
ADSoft вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
SQL запрос irinka2706 SQL, базы данных 1 24.02.2012 09:36
sql-запрос kkkcka БД в Delphi 4 02.07.2011 20:12
Запрос с CASE переделать в запрос с PIVOT (MS SQL Server 2005) Машуля SQL, базы данных 4 06.05.2010 21:09
Создание новых таблиц в MS SQL SERVERE через SQL запрос в Delphi S_Yevgeniy Помощь студентам 1 27.10.2009 06:26
SQL запрос на основе другого SQL запрса... Timoxa БД в Delphi 1 07.01.2007 18:15