Un pcpointset es un conjunto ordenado de valores pcpoint distintos; un pcpatchset es el tipo de conjunto análogo para pcpatch. Ambos siguen la semántica general de conjuntos de MobilityDB (véase Capítulo 2, Tipos de conjunto y de rango): los valores se deduplicen en la construcción, la representación binaria es canónica, y todos los operadores genéricos a nivel de conjunto (=, <>, <, <=, >, >=, @>, <@, &&, +, -, *) y las funciones de acceso (numValues, memSize, asText, asBinary, asHexWKB, …) están disponibles.
Todos los valores de un conjunto deben compartir el mismo pcid. Mezclar esquemas en un único conjunto genera un error en el momento de la construcción.
Construye un conjunto a partir de un array de valores, todos los cuales deben compartir el mismo pcid
set(pcpoint[]) → pcpointset
set(pcpatch[]) → pcpatchset
SELECT numValues(set(ARRAY[PC_MakePoint(1, ARRAY[10.0, 20.0, 30.0]), PC_MakePoint(1, ARRAY[10.0, 20.0, 30.0]), -- duplicate, deduped PC_MakePoint(1, ARRAY[11.0, 21.0, 31.0])])); -- 2