2017-08-03 54 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

更新了问题 –