1
0
Fork 0
spacetraders/golang/pkg/database/sql/001_trading.sql

37 lines
1.2 KiB
SQL

CREATE TABLE agents (
id INTEGER PRIMARY KEY,
data TEXT NOT NULL
);
CREATE TABLE markets (
id INTEGER PRIMARY KEY,
data JSON NOT NULL,
updated DATE NOT NULL
);
CREATE UNIQUE INDEX markets_data_symbol on markets(json_extract(data, '$.symbol'));
CREATE TABLE shipyards (
id INTEGER PRIMARY KEY,
data JSON NOT NULL,
updated DATE DEFAULT NULL
);
CREATE UNIQUE INDEX shipyards_data_symbol on shipyards (json_extract(data, '$.symbol'));
CREATE TABLE systems (
id INTEGER PRIMARY KEY,
data JSON NOT NULL
);
CREATE UNIQUE INDEX systems_data_symbol on systems (json_extract(data, '$.symbol'));
CREATE TABLE transactions (
id INTEGER PRIMARY KEY,
data JSON NOT NULL
);
CREATE UNIQUE INDEX transactions_data_symbol on transactions (json_extract(data, '$.symbol'));
CREATE INDEX transactions_data_type on transactions (json_extract(data, '$.type'));
CREATE INDEX transactions_data_shipSymbol on transactions (json_extract(data, '$.shipSymbol'));
CREATE INDEX transactions_data_waypointSymbol on transactions (json_extract(data, '$.waypointSymbol'));
CREATE TABLE waypoints (
id INTEGER PRIMARY KEY,
data JSON NOT NULL,
updated DATE NOT NULL
);
CREATE UNIQUE INDEX waypoints_data_symbol on waypoints(json_extract(data, '$.symbol'));