2016-04-01 5 views
0

私はlbsをグラムに変換しようとしています。私は元の金額を1ポンドで保存しました。グラムに変換するために、これらの値のそれぞれに453.592を掛けたいと思います。各列に数値を掛けて、各列の新しい値を設定するにはどうすればよいですか?

以下のクエリは最初の選択の値を保存し、各列では機能しません。

最初に列を選択し、それを乗算して更新するにはどうすればよいですか?ただ

UPDATE inventory 
SET original_amount = subquery.new_amount 
FROM (SELECT original_amount * 453.592 as new_amount 
     FROM inventory) AS subquery 
where original_units iLike 'lbs'; 

答えて

6

ここサブクエリは必要ない、:

UPDATE inventory 
SET original_amount = original_amount * 453.592  
WHERE original_units iLike 'lbs'; 

あなたはoriginal_unitsフィールドを更新する場合は、あなたが同様にこのクエリでそれを行うことができます。

UPDATE inventory 
SET original_amount = original_amount * 453.592, 
    original_units='grams' 
WHERE original_units iLike 'lbs'; 
+0

私は」 mは 'original_units'が' original_amount'と一緒になっていると推測しています:) –

+0

ああ...ありがとうございます。私は混乱を取り除くために答えを更新します。 – JNevill

+0

いや...今はもっと意味がある。ありがとう@JoachimIsaksson – JNevill

関連する問題