refactor: total change, no longer ripping gigabytes but going directly to datasets, must find way to automate download.
This commit is contained in:
118
db_schema.sql
118
db_schema.sql
@@ -1,55 +1,75 @@
|
||||
CREATE TABLE IF NOT EXISTS entities (
|
||||
cik INT PRIMARY KEY, -- CIK is now the primary key, ensuring uniqueness
|
||||
name VARCHAR(255) NOT NULL -- Name of the company
|
||||
CREATE TABLE num (
|
||||
adsh VARCHAR(255),
|
||||
tag VARCHAR(255),
|
||||
version VARCHAR(255),
|
||||
coreg VARCHAR(255),
|
||||
ddate BIGINT,
|
||||
qtrs BIGINT,
|
||||
uom VARCHAR(50),
|
||||
value DOUBLE PRECISION,
|
||||
footnote TEXT
|
||||
);
|
||||
|
||||
CREATE TABLE IF NOT EXISTS facts (
|
||||
id VARCHAR(255) PRIMARY KEY, -- Unique identifier for the fact
|
||||
taxonomy VARCHAR(255), -- Taxonomy of the fact
|
||||
label VARCHAR(255), -- Label of the fact
|
||||
description TEXT, -- Description of the fact
|
||||
unit VARCHAR(255) -- Unit of the fact
|
||||
CREATE TABLE pre (
|
||||
adsh VARCHAR(255),
|
||||
report BIGINT,
|
||||
line BIGINT,
|
||||
stmt VARCHAR(255),
|
||||
inpth BIGINT,
|
||||
rfile VARCHAR(255),
|
||||
tag VARCHAR(255),
|
||||
version VARCHAR(255),
|
||||
plabel VARCHAR(255),
|
||||
negating BIGINT
|
||||
);
|
||||
|
||||
CREATE TABLE IF NOT EXISTS data (
|
||||
cik INT, -- CIK of the company
|
||||
fact_id VARCHAR(255),
|
||||
end DATE,
|
||||
start DATE, -- Start date of the fact
|
||||
val INT,
|
||||
accn VARCHAR(255),
|
||||
fy INT,
|
||||
fp VARCHAR(255),
|
||||
form VARCHAR(255),
|
||||
filed DATE,
|
||||
frame VARCHAR(255),
|
||||
PRIMARY KEY (cik, fact_id, end),
|
||||
FOREIGN KEY (cik) REFERENCES entities(cik),
|
||||
FOREIGN KEY (fact_id) REFERENCES facts(id)
|
||||
CREATE TABLE sub (
|
||||
adsh VARCHAR(255),
|
||||
cik BIGINT,
|
||||
name VARCHAR(255),
|
||||
sic DOUBLE PRECISION,
|
||||
countryba VARCHAR(100),
|
||||
stprba VARCHAR(100),
|
||||
cityba VARCHAR(255),
|
||||
zipba VARCHAR(50),
|
||||
bas1 VARCHAR(255),
|
||||
bas2 VARCHAR(255),
|
||||
baph VARCHAR(255),
|
||||
countryma VARCHAR(100),
|
||||
stprma VARCHAR(100),
|
||||
cityma VARCHAR(255),
|
||||
zipma VARCHAR(50),
|
||||
mas1 VARCHAR(255),
|
||||
mas2 VARCHAR(255),
|
||||
countryinc VARCHAR(100),
|
||||
stprinc VARCHAR(100),
|
||||
ein BIGINT,
|
||||
former VARCHAR(255),
|
||||
changed DOUBLE PRECISION,
|
||||
afs VARCHAR(255),
|
||||
wksi BIGINT,
|
||||
fye DOUBLE PRECISION,
|
||||
form VARCHAR(50),
|
||||
period DOUBLE PRECISION,
|
||||
fy DOUBLE PRECISION,
|
||||
fp VARCHAR(50),
|
||||
filed BIGINT,
|
||||
accepted VARCHAR(255),
|
||||
prevrpt BIGINT,
|
||||
detail BIGINT,
|
||||
instance VARCHAR(255),
|
||||
nciks BIGINT,
|
||||
aciks VARCHAR(255)
|
||||
);
|
||||
|
||||
|
||||
-- @block
|
||||
CREATE TABLE IF NOT EXISTS data (
|
||||
entity_cik INT,
|
||||
entity_name VARCHAR(255),
|
||||
fact_id VARCHAR(255),
|
||||
fact_taxonomy VARCHAR(255),
|
||||
fact_label VARCHAR(255),
|
||||
fact_description TEXT,
|
||||
fact_unit VARCHAR(255)
|
||||
end DATE,
|
||||
val FLOAT,
|
||||
accn VARCHAR(50),
|
||||
fy INT,
|
||||
fp VARCHAR(255),
|
||||
form VARCHAR(255),
|
||||
filed DATE,
|
||||
frame VARCHAR(255),
|
||||
start DATE,
|
||||
PRIMARY KEY (entity_cik, fact_id, end, form),
|
||||
|
||||
)
|
||||
|
||||
-- @block
|
||||
CREATE TABLE IF NOT EXISTS data ();
|
||||
CREATE TABLE tag (
|
||||
tag VARCHAR(255),
|
||||
version VARCHAR(255),
|
||||
custom BIGINT,
|
||||
abstract BIGINT,
|
||||
datatype VARCHAR(255),
|
||||
iord VARCHAR(50),
|
||||
crdr VARCHAR(50),
|
||||
tlabel VARCHAR(255),
|
||||
doc TEXT
|
||||
);
|
||||
Reference in New Issue
Block a user