Append a temporal instant or a temporal sequence
appendInstant(tnpoint,tnpointInst) → tnpoint
appendSequence(tnpoint,tnpointSeq) → tnpoint
SELECT asText(appendInstant(tnpoint 'Npoint(1, 0.1)@2001-01-01', 'Npoint(1, 0.2)@2001-01-02'));
-- [NPoint(1,0.1)@2001-01-01 00:00:00+01, NPoint(1,0.2)@2001-01-02 00:00:00+01]
SELECT asText(appendSequence(tnpoint '[Npoint(1, 0.1)@2001-01-01]', '[Npoint(1, 0.2)@2001-01-02]'));
-- {[NPoint(1,0.1)@2001-01-01 00:00:00+01], [NPoint(1,0.2)@2001-01-02 00:00:00+01]}
Merge the temporal network points
merge(tnpoint,tnpoint) → tnpoint
merge(tnpoint[]) → tnpoint
mergeAgg(tnpoint) → tnpoint
SELECT asText(merge(tnpoint '[Npoint(1, 0.1)@2001-01-01, Npoint(1, 0.3)@2001-01-03]',
'[Npoint(1, 0.3)@2001-01-03, Npoint(1, 0.5)@2001-01-05]'));
-- [NPoint(1,0.1)@2001-01-01 00:00:00+01, NPoint(1,0.5)@2001-01-05 00:00:00+01]
SELECT asText(merge(ARRAY[tnpoint '[Npoint(1, 0.1)@2001-01-01, Npoint(1, 0.2)@2001-01-02]',
'[Npoint(1, 0.2)@2001-01-02, Npoint(1, 0.3)@2001-01-03]']));
-- [NPoint(1,0.1)@2001-01-01 00:00:00+01, NPoint(1,0.3)@2001-01-03 00:00:00+01]
WITH temp(inst) AS (
SELECT tnpoint 'Npoint(1, 0.1)@2001-01-01' UNION
SELECT tnpoint 'Npoint(1, 0.2)@2001-01-02' UNION
SELECT tnpoint 'Npoint(1, 0.3)@2001-01-03' )
SELECT asText(mergeAgg(inst)) FROM temp;
-- {NPoint(1,0.1)@2001-01-01 00:00:00+01, NPoint(1,0.2)@2001-01-02 00:00:00+01, NPoint(1,0.3)@2001-01-03 00:00:00+01}