2017-11-25 357 views
-1

我正在使用Postgres和Python(psycopg2)。插入表格其中

我正在尋找一種將數據插入到表中的方法。

假設一個有10行的表。 id從1到10.在WHERE條件下取一行(即id = 3),除了2列(col3和col4)外,我的所有列都填充了一些值。含義col1,col2和col5中有值。 col3和col4具有NULL條件,解釋了爲什麼它們首先是空的。

我想用這些數據填充這兩列。

我要尋找類似:

INSERT INTO table_a (col3,col4) WHERE id = 3 VALUES ... 

底線,我想找到的行我應該填寫我的兩個空列與數據,我想。

+1

查看UPDATE SET = WHERE id = xyz'語法 –

+1

INSERT與WHERE組合使用沒有任何意義 - INSERT創建_new_記錄。您想要_UPDATE_現有記錄。 – CBroe

回答

0

我想你想UPDATE,不INSERT

UPDATE table_a 
    SET col3 = ?, 
     col4 = ? 
    WHERE id = 3; 

INSERT插入新行插入表中。 UPDATE更新現有的行。

1

聽起來你正在尋找一個update聲明,而不是insert聲明:

UPDATE table_a 
SET col3 = 'some_value', col4 = 'some_other_value 
WHERE id = 3 
0

如果該行已經存在,你正在尋找一個更新,而不是插入。

UPDATE table 
    SET col3 = valueY, 
     col4 = valueX 
WHERE id = 3 

這對你有意義嗎?