2016-09-14 17 views
0

これについての回答を見つけるために少し問題があります。 Select with a Whereステートメントを使用して、Updateを使用していくつかの行に新しい情報を入れる必要があります。私のメインテーブルでWhereステートメントを使用して選択すると更新する方法

私が持っている列

Equipment_ID Type Unit_Name Address Latitude Longitude 

とAUXテーブルに私は

Equipment_ID Type Latitude Longitude 

は、だから私は新しい緯度を配置する必要があり、各IDの更新された緯度と経度を持っ

し、メインテーブルの古いLatとLonの各IDのLon。私はこのようなものはうまくいくと思うが、この例では別の質問で見つけたが、彼はただ一つのフィールドを更新し、それは私を混乱させた。

UPDATE a 
SET  a.marks = b.marks 
FROM tempDataView a 
    INNER JOIN tempData b 
    ON a.Name = b.Name 

どのように私は、緯度と経度を更新しますが、任意のヒントを事前にのみ

WHERE main.Equipment_ID = aux.Equipment_ID 
AND main.Type   = aux.Type 

感謝を更新どこ文として持つん。

答えて

2

JOINを更新ステートメントに使用することはできません。where節で「結合」する必要があります。

また:FROM句でませ繰り返しにターゲット表の操作を行います。

UPDATE main 
    SET latitude = aux.latitude, 
     longitude = aux.longitude 
FROM aux 
WHERE main.Equipment_ID = aux.Equipment_ID 
AND main.Type   = aux.Type 
+0

まあ、技術的に、あなたは* *だけではないテーブル参照であることに、 'UPDATE'に' JOIN'を使用することができます更新しました。 –

関連する問題