根据第一列合并CSV表格行 – sqlite
我正在尝试将excel数据库迁移到sqlite,尽pipe我没有后者的专业知识。
我的第一步是将一系列CSV文件导入到一个sql数据库(我发现这很容易)。 这些表格有一个共同的结构,即
column1: timestamp column2: temperature column3: humidity
第二步是根据第一列(timestamp)中的值合并来自导入表的行。 行中的数据可能会重叠或存在空位,例如:
timestamp,temperature,humidity 04/01/2016 09:00:00, 23.1, 45.5 04/01/2016 09:15:00, 23.3, 46 ... 20/01/2016 15:15:00, 25, 40
同
timestamp,temperature,humidity 10/01/2016 09:00:00, 23.1, 45.5 10/01/2016 09:15:00, 23.3, 46 ... 30/01/2016 15:15:00, 25, 40
我怎样才能合并两个(或更多)导入的CSV,覆盖公共数据,并留空白(或NULL)值的差距到一个主SQL表?
谢谢安德烈
My_Table具有以下列:
时间| temp | 湿度
example.csv有以下数据:
10/01/2016 09:15:00,23.1,45.5
10/01/2016 09:11:00,22.3,41.5
10/01/2016 09:15:00,23.1,42.5
转到Sqlite3terminal并运行以下命令。
.separator "," .import example.csv My_Table
同样,您可以导入所有csv文件,最后您可以根据时间删除重复的行。
delete from My_Table where rowid not in (select max(rowid) from My_Table group by time);