2011-09-08 88 views
-1

假設我有一個表table1和另一個表table2。兩者都有相同的列名稱「說明」。 table1在描述列中有一些數據,而table2沒有(null)數據。那麼我怎樣才能將table1中的數據更新到table2描述列?他們有一列在兩者中都有相同的值,也是獨一無二的。任何想法?Sqlite查詢幫助

+0

表中還有其他的列嗎?你添加到table2的描述是否需要鏈接到表中的特定ID? – ipr101

+0

是的,這兩個表中都有一個相同且具有唯一值的id。我也編輯了我的問題。 –

回答

0

這將工作提供了關鍵的是獨特的:

UPDATE db2.table2 SET description = (SELECT table1.description FROM db1.table1 AS table1 WHERE table1.id = db1.table2.id) 
+0

我給這兩個表的別名,但它顯示error.Is有任何禁止在更新的情況下給別名。 –

+0

@Android Power:你不能給你在UPDATE中更新的表提供一個別名。用它自己的名字引用它,如果你需要子選擇中的同一個表,那麼在那裏使用別名。 – Benoit

+0

我的問題是兩個表中的2個不同的數據庫。我正在更新表,但它是拋出異常。 –

0

試試這個:

update t1 set b=(select b from t2 where a=t1.a); 

其中b是描述和a是匹配值。