2017-08-03 56 views
0

我需要完成我的查詢,添加表testcsv2不存在臨時表tmp_x行:導入CSV文件(重複行)

CREATE TEMP TABLE tmp_x AS SELECT * FROM testcsv2 LIMIT 0; 

COPY tmp_x FROM 'D:\water_utility2.csv' (FORMAT csv); 

UPDATE testcsv2 
SET record = tmp_x.record, "Battery Voltage" = tmp_x."Battery Voltage" 
FROM tmp_x 
WHERE testcsv2.timestamp = tmp_x.timestamp; 

DROP TABLE tmp_x; 

你能幫助我嗎?

更新:

TABLE testcsv2 
(TIMESTAMP timestamp, RECORD double precision, "Battery Voltage" double precision); 

tmp_x是相同的列。與綜合類填充從CSV:

2009-12-31 23:00:00,112086,13.56197 
2009-12-31 23:15:00,102087,23.56113 
2009-12-31 23:30:00,102088,13.56449 
2010-01-01 23:45:00,102089,13.57373 

回答

0

試試這個:

insert into testcsv2 select * from (
select x.* 
from tmp_x x 
left outer join testcsv2 t on t. timestamp = x. timestamp 
where t. timestamp is null 
) as missing; 
+0

錯誤代碼0,SQL狀態42601:ERROR:INSERT比 –

+0

你必須映射列目標列更多的表情。如果你要我這樣做,請更新OP表格結構 –

+0

更新了問題 –