Adds a timestamped event to a trajectory object and returns the updated trajectory.
Syntax
trajectory ST_addEvent(trajectory traj, integer event_type, timestamp event_time);Parameters
| Parameter | Type | Description |
|---|---|---|
traj | trajectory | The trajectory object to update. |
event_type | integer | The event type ID. Event type IDs are predefined. For example, 1000 represents unlocking and 2000 represents locking. |
event_time | timestamp | The timestamp of the event. |
Example
The following example adds event type 1 at 2010-01-01 11:30:00 to a trajectory that spans the same interval. The output shows the trajectory with an events array appended.
WITH traj AS (
SELECT '{"trajectory":{"version":1,"type":"STPOINT","leafcount":2,"start_time":"2010-01-01 11:30:00","end_time":"2010-01-01 12:30:00","spatial":"SRID=4326;LINESTRING(1 1,3 5)","timeline":["2010-01-01 11:30:00","2010-01-01 12:30:00"],"attributes":{"leafcount":2,"velocity":{"type":"integer","length":4,"nullable":true,"value":[1,null]},"speed":{"type":"float","length":8,"nullable":true,"value":[null,1.0]},"angle":{"type":"string","length":64,"nullable":true,"value":["test",null]},"tngel2":{"type":"timestamp","length":8,"nullable":true,"value":["2010-01-01 12:30:00",null]},"bearing":{"type":"bool","length":1,"nullable":true,"value":[null,true]}}}}'::trajectory a
)
SELECT st_addevent(a, 1, '2010-01-01 11:30:00') FROM traj;
-- {"trajectory":{"version":1,"type":"STPOINT","leafcount":2,"start_time":"2010-01-01 11:30:00","end_time":"2010-01-01 12:30:00","spatial":"SRID=4326;LINESTRING(1 1,3 5)","timeline":["2010-01-01 11:30:00","2010-01-01 12:30:00"],"attributes":{"leafcount":2,"velocity":{"type":"integer","length":4,"nullable":true,"value":[1,null]},"speed":{"type":"float","length":8,"nullable":true,"value":[null,1.0]},"angle":{"type":"string","length":64,"nullable":true,"value":["test",null]},"tngel2":{"type":"timestamp","length":8,"nullable":true,"value":["2010-01-01 12:30:00",null]},"bearing":{"type":"bool","length":1,"nullable":true,"value":[null,true]}},"events":[{"1":"2010-01-01 11:30:00"}]}}
-- (1 row)该文章对您有帮助吗?