27

table1 から ref_id1 を table2 の列 ref_id2 にコピーする必要があります。一致する 2 つのものは、id (同じ列名)、a_ref1 & b_ref1 (列名は異なりますが、数値は同じです) です。

表1

ID      ref_id1                     a_ref1
9     2.3456762498;               1367602349
9     1.61680784158;              1367653785
9     2.63461385408;              1367687746
9     0;                          1367688520
9     0.780442217152;             1367740313
9     3.18328461662;              1367773889
9     0.775471247616;             1367774978

表2

ID          b_ref1                      ref_id2
9        1367602349;
9        1367740313;
9        1367774978;
2        1357110511;
2        1357186899;
2        1357195928;
2        1357199525;

簡単に言えば、id と a_ref1 を b_ref1 と比較して、ref_id1 を ref_id2 にコピーする必要があります。その方法を教えてください。

4

4 に答える 4

12
UPDATE Table2 --format schema.table_name
SET 
ref_id2 = table1.ref_id1
FROM table1 -- mention schema name
WHERE table1.id = table2.id
AND 
table1.a_ref1 = table2.b_ref1;
于 2013-06-27T18:41:16.827 に答える
3

あなたが欲しいのは

UPDATE Table2
SET ref_id2 = table1.ref_id1
FROM table1
WHERE table1.id = table2.id
AND table1.a_ref1 = table2.b_ref1;

編集これはあなたが実際に欲しいものです

ここに見られるように(大雑把に)

于 2013-06-27T03:34:04.920 に答える
0

私はこれがうまくいくと思います:

UPDATE Table2
SET ref_id2 = ref_id1
FROM Table2 
   JOIN Table1 ON 
       Table2.Id = Table1.Id AND Table2.a_ref1 = Table1.b_ref1
于 2013-06-27T03:28:52.647 に答える