如何使用sqlite3清除数据

时间:2018-11-08 02:33:36

标签: database sqlite data-cleaning

我已经通过使用DB Browser通过简单地插入包含多个表的所有csv文件来构建数据库,该表如下所示:

sqlite> .schema P2012_EBITDA 创建表P2012_EBITDA(         Mark,         Companyname,         BvDIDnumber,         CountryISOCode,         Dateofincorporation,         Cons.code,         Lastavail.year,         ClosingdateLastavail.yr,         Numberofavailableyears,         NACERev.2Corecode(4digits),         BVDindependenceindicator,         Type(s)ofaccountsavailable,         Typeofentity,         EBITDAthUSDLastavail.yr,         EBITDAthUSDYear-1,         EBITDAthUSDYear-2,         EBITDAthUSDYear-3,         EBITDAthUSDYear-4,         EBITDAthUSDYear-5,         EBITDAthUSDYear-6,         EBITDAthUSDYear-7,         EBITDAthUSDYear-8,         EBITDAthUSDYear-9 );

sqlite> SELECT * FROM P2012_EBITDA LIMIT 1; 1 |皇家荷兰盾PLC | GB04366849 | GB | 2002/5/2 | C2 | 2010 | 31/12/2010 | 6 | 0610 | A + |缺点&Uncons。|工业公司| 51,927,636 | 36,122,919 | 65,082,035 | 62,494,114 | 57,180,747 | 56,649,160 ||||

现在,我需要转换数据,以便BvD ID和会计年度唯一地标识一条记录。首先,确定哪一年是“最后可用会计年度”(0,-1,-2,-3,-4,-5,-6,-7,-8,-9)。假设记录的帐户关闭日期为2012/7/1或之后,然后将最后一个可用会计年度定义为2012。如果关闭日期是2012/6/30或之前,将最后一个可用会计年度定义为2011。 ,将所有相对年份转换为绝对会计年度(例如,如果最后一个可用会计年度为2011,则绝对年份为2011、2010、2009、2008、2007、2006、2005、2004、2003、2002)。 ,将数据从“宽格式”更改为“长格式”。由于现在BvD ID +会计年度可以唯一标识一条记录,因此您可以将主键设置为BvD ID和会计年度。

非常感谢!

0 个答案:

没有答案