Новости
Документация
Download
Webboard
Поиск
FAQ/ЧаВо
Обратная связь




MySQL.RU - Webboard



Вернуться
UPDATE 2х таблиц одним запросом (Илья) 01/03/2007 - 23:31:02
      Re: UPDATE 2х таблиц одним запросом (Альмир) 05/03/2007 - 14:54:22

> Original message text:
> From: Илья - 01/03/2007 - 23:31:02
> Subject:UPDATE 2х таблиц одним запросом
> -----------------
> ====b1====
> +--+-----+
> |id|point|
> +--+-----+
> |11|10000|
> +--+-----+
>
> =======b2=======
> +--+---+---+---+
> |id|aaa|old|new|
> +--+---+---+---+
> |11|100| 3 | 0 |
> +--+---+---+---+
> |11|200| 25| 0 |
> +--+---+---+---+
>
> что мы имеем, 2 таблицы, нужно сделать запрос UPDATE такой, в таблице b2 изменить aaa на столько, на сколько ячейка old больше чем ячейка new, при этом ячейки old & new уровнять по значению, и так же увеличить значение в таблице b1 у того же id что равен в таблице b2
>
> я пытался сделать такой запрос, но т.к. он не принёс результата я понял что он не верный...
>
> update `b1`, `b2`
> set
> `b1`.`point`=`b1`.`point` + (`b2`.`old`-`b2`.`new`),
> `b2`.`aaa`=`b2`.`aaa`+(`b2`.`old`-`b2`.`new`),
> `b2`.`new`=`b2`.`new`+(`b2`.`old`-`b2`.`new`)
> where `b1`.`id`=`b2`.`id`
>
> после выполнения данного запроса имеем следущее:
>
> ====b1====
> +--+-----+
> |id|point|
> +--+-----+
> |11|10003|
> +--+-----+
>
> =======b2=======
> +--+---+---+---+
> |id|aaa|old|new|
> +--+---+---+---+
> |11|103| 3 | 3 |
> +--+---+---+---+
> |11|225| 25| 25|
> +--+---+---+---+
>
> а хотелось бы что бы b1.point равнялся 10028
>


From: Альмир - 05/03/2007 - 14:54:22
Subject:UPDATE 2х таблиц одним запросом
-----------------
Используйте триггеры.
Изменяете данные в одной таблицы, срабатывает триггер, обновляются данные в другой


[Это сообщение - спам!]

Последние сообщения из форума

Уважаемые посетители форума MySQL.RU!
Убедительная просьба, прежде чем задавать свой вопрос в этом форуме, обратите внимание на разделы:
- ответы на наиболее часто задаваемые вопросы - FAQ
- раздел документация
- раздел поиск по сообщениям форума и документации
Также, старайтесь наиболее подробно указывать свою ситуацию (версию операционной системы, версию MySQL, версию программного обеспечения, по которому возникает вопрос, текст возникающих ошибок, и др.)
Помните, чем конкретнее Вы опишете ситуацию, тем больше шансов получить реальную помощь.
 Имя:
 E-mail:
 Тема:
 Текст:
Код подтверждения отправки: Code
30904



РЕКЛАМА НА САЙТЕ
  Создание сайтов | |