私は現在、テーブルからSELECT
カラムを選択しようとしていますが、選択した値で算術演算を行い、更新された値を同じテーブルに戻します。今のところ、私はSELECT
すべての列、別のテーブルにコピーすると、UPDATE
そのテーブルをコピーして戻ってコピーすると思っているが、これは冗長に思える。PostgreSQL SELECT、UPDATE、INSERTを一緒に使用します
INSERT INTO tableB (x, y) SELECT x, y FROM tableA;
UPDATE tableB SET y = y + 1;
INSERT INTO tableA (x, y) SELECT x, y FROM tableB;
x
とy
はUNIQUE(x, y)
EDITを宣言されている:このトランザクションのために別のテーブルを作成しないようにする方法はありますか?
その後、あなたは私の知る限り二つの文を必要としています。 2つの挿入が論理的に依存している場合は、トランザクションを使用することができます。 –
私の質問は少し曖昧かもしれないと思うが、私はコピーし、1つのテーブル(この場合はtableA)の値を更新しようとしている。一時的な値を保持するためにtableBを作成しました。 – Larrrrrrrrrry