2014-09-29 4 views
1

Привет у меня есть этот 2 таблицы:, используя формулу для вычисления значения столбца в SQL

enter image description here

enter image description here

Я хочу, чтобы вычислить med_pr значение и обновлять его с результатом из этой формулы:

(table1.med/table2.total) * (39/69)

where table1.number = table2.number 

Как мне это сделать? спасибо за ваши повторы. Жаль я новичков в sql.

ответ

0

UPDATE оговорки могут содержать JOIN s.

UPDATE table1 
SET med_pr = ((table1.med/table2.total) * (39/69)) 
FROM table1 
    INNER JOIN table2 ON table1.number = table2.number 

Вы, вероятно, хотите, чтобы запустить это как SELECT первый, конечно, как это СОП делать UPDATE с, но я считаю, что это должно дать результат, который вы ищете.

+0

он поставил 0 во всех областях med_pr, почему? :( –

+0

Как вы думаете, что является причиной этого? Тип данных столбца «med_pr» - float, а table1.med & table2.total - int –

+0

Я узнаю, что когда я удаляю эту часть '* (39/69)' из вашего запроса он дает правильный ответ, но, добавляя его, он просто возвращает 0! –

Смежные вопросы