working example with write and select

This commit is contained in:
2026-01-29 15:50:56 +01:00
parent 361bd7bc4a
commit 71b17a11bd
10 changed files with 150 additions and 99 deletions

View File

@@ -1,18 +1,18 @@
CREATE TYPE battery_status_enum AS ENUM ('unknown', 'unplugged', 'charging', 'full');
CREATE TABLE locations (
timestamp bigint PRIMARY KEY,
latitude numeric(9,6) NOT NULL,
longitude numeric(9,6) NOT NULL,
accuracy numeric(7,2) NOT NULL,
altitude numeric(7,2),
velocity numeric(7,2),
battery_level smallint NOT NULL,
bearing numeric(6,3),
battery_status battery_status_enum DEFAULT 'unknown' NOT NULL,
CONSTRAINT Location_battery_level_check CHECK ((battery_level >= 0) AND (battery_level <= 100)),
CONSTRAINT Location_bearing_check CHECK ((bearing >= (0)::numeric) AND (bearing <= (360)::numeric))
tst bigint PRIMARY KEY,
lat numeric(9,6) NOT NULL,
lon numeric(9,6) NOT NULL,
acc numeric(7,2) NOT NULL,
alt numeric(7,2),
vel numeric(7,2),
batt smallint NOT NULL,
bear numeric(6,3),
bs battery_status_enum DEFAULT 'unknown' NOT NULL,
CONSTRAINT Location_battery_level_check CHECK ((batt >= 0) AND (batt <= 100)),
CONSTRAINT Location_bearing_check CHECK ((bear >= (0)::numeric) AND (bear <= (360)::numeric))
)
WITH (oids = false);
CREATE INDEX locations_timestamp ON locations USING btree (timestamp);
CREATE INDEX locations_timestamp ON locations USING btree (tst);