ALTER TABLE ... ADD COLUMN
>
続いてUPDATE
。
私は最初にALTERTABLE ... ADD COLUMN ... USING
と言いました しかし、それは2つの点で間違っていました。 ADD COLUMN
DEFAULT
を取ります USING
ではありません - DEFAULT
でもないため、1回のパスで実行することはできません。 式もUSING
式は他の列を参照しない場合があります。
したがって、次のことを行う必要があります:
ALTER TABLE tablename ADD COLUMN colname varchar;
UPDATE tablename SET colname = ( CASE WHEN othercol < 0 THEN 'Credit' ELSE 'Debit' END );
ゼロを「借方」にするか「貸方」にするかを慎重に検討し、 CASE
を調整します。 それに応じて。
丸めには、 round(amount、2)を使用します。コード>
。あなたの質問には、その方法を確認するのに十分な詳細がありません。おそらくUPDATE
UPDATE thetable SET amount =round(amount、2)
を使用して一時テーブルを作成する しかし、文脈がなければ、それが正しいかどうかを知るのは難しいです。 そのステートメントは情報を不可逆的に破棄します したがって、データのコピーでのみ使用する必要があります。