Могу ли я выполнить вычисления для двух таблиц и добавить результат в определенный столбец в одной из этих таблиц? - PullRequest
0 голосов
/ 02 января 2011

Хорошо, скажем, у меня есть две таблицы Product и Sales. Продукт содержит идентификатор, имя и цену.Продажи содержат итоговые позиции, проданные позиции. Я хочу получить цену из таблицы продуктов и умножить ее на проданные позиции из таблицы продаж и сохранить результат в столбце количество продаж в таблице продаж.

Как я могу это сделать?используя MySQL и на сервере MS SQL 2008

Ответы [ 2 ]

1 голос
/ 02 января 2011
update Sales 
set `amount-sold` = 
  `sold-items` * 
  (select ifnull(price, 0) 
   from Product 
   where Product.id=Sales.product_id);
0 голосов
/ 02 января 2011

Извлечение данных:

SELECT p.`price`,s.`sold-items` FROM `product` AS p INNER JOIN `sales` AS s ON s.`id`=p.`id` WHERE p.`id` = 123

Сохраните результат запроса в переменной, затем выполните умножение и вставьте данные обратно.

UPDATE `sales` SET `amount-sold` = {NEW VALUE} WHERE `id` = 123
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...