Я создал базу данных, используя DB Browser, просто вставив все CSV-файлы, которые содержат несколько таблиц, и таблица выглядит так:
sqlite> .schema P2012_EBITDA
CREATE TABLE 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 | ROYAL DUTCH SHELL PLC | GB04366849 | RU | 05/02/2002 | 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 и отчетный год однозначно идентифицировали запись. Сначала определите, какой год является «последним доступным отчетным годом» (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 и отчетный год.
Очень ценится!