41 lines
1.2 KiB
SQL
41 lines
1.2 KiB
SQL
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 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 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)
|
|
);
|
|
|
|
|
|
-- @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)
|
|
) |