Agregar un instante temporal o una secuencia temporal
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, NPoint(1,0.2)@2001-01-02]
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], [NPoint(1,0.2)@2001-01-02]}
Fusionar los puntos de red temporales
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, NPoint(1,0.5)@2001-01-05]
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, NPoint(1,0.3)@2001-01-03]
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, NPoint(1,0.2)@2001-01-02, NPoint(1,0.3)@2001-01-03}