2016-12-10 13 views
0

私は次の列とデータを自分のテーブルに設定しています。私はID *番号(つまり、マルチカラムの最初の値は1 * 1025 = 1025、2番目の値は2 * 2587 = 5174となるなど、マルチカラムを埋める必要があります)これに対してpostgresqlクエリが必要です。ループのために必要か(しかし、私はそれを代わりにまとめて行うことの1列ずつを行うにはしたくない)他のいくつかのトリックによって行うことができますか?postgresqlで単一列の複数の行を変更するには?

id multi number 
1   1025 
2   2587 
3   1475 
4   5698 
5   254 
6   912 
7   442 
8   8756 
9   1123 

その後、私は次のクエリを持っていることは最も簡単な方法です

SELECT 
id, 
number, 
(id * number) as multi 
FROM 
tableName 

このSELECTは機能していますが、INSERTまたはUPDATEはこれで動作していません。

答えて

2
UPDATE tableName 
SET multi = id * number; 

何か不足していますか?

+0

私はこれを試しましたが、なぜ機能していないのか分かりません。「エラー:式として使用されるサブクエリによって返される複数の行」 – LSG

+0

@LSGこのコードをどのように正確に実行していますか? – melpomene

+0

私は列名geomのジオメトリデータを持っています。 ST_startpointを使用して、geom列からstart_geom列を埋める必要があります。私のクエリは次のとおりです。UPDATE public.edge_table1 SET(start_geom)=(SELECT ST_StartPoint(ST_Force2D(geom))FROM public.edge_table1); – LSG

関連する問題