2014-03-19 33 views
1

我想選擇的值從一個表中的行復制到另一個表,問題是,SQLite的給出了一個嵌套SELECT命令僅複製選擇的值從一個表到另一個表條件

java.sql.SQLException: only a single result allowed for a SELECT that is part of an expression錯誤

這裏就是我想:

INSERT INTO table2(ID, ProjectName) 
SELECT ID, ProjectName FROM table1 
Where table1.ID NOT IN table2 

我不能使用*這裏,因爲table1有四列和table2只有3 所有已做的是檢查是否從table1任何ID值中不存在table2,那麼只有ID各自ProjectName值從table1複製,並將其插入到表2爲ID, ProjectName , null

null是爲THRID列值在表2中。

任何建議或幫助將是巨大

回答

2

您所查詢的是幾乎沒有:

INSERT INTO table2(ID, ProjectName) 
    SELECT ID, ProjectName 
    FROM table1 
    Where table1.ID NOT IN (select table2.id from table2); 

這是標準的SQL,所以應該在任何數據庫。

+0

布拉沃,工作就像一個魅力。沒有意識到最後一部分,我應該從table2中選擇ID列。這樣一個愚蠢的錯誤:-D 非常感謝。 – Indigo

相關問題