seg
seg
seg : data type for representing line segments or floating-point intervals
Overview
| ID | Extension | Package | Version | Category | License | Language |
|---|---|---|---|---|---|---|
| 3940 | seg | seg | 1.4 | TYPE | PostgreSQL | C |
| Attribute | Has Binary | Has Library | Need Load | Has DDL | Relocatable | Trusted |
|---|---|---|---|---|---|---|
--s-dt- | No | Yes | No | Yes | no | yes |
| Relationships | |
|---|---|
| See Also | cube intarray intagg prefix semver unit pgpdf pglite_fusion |
Packages
| PG18 | PG17 | PG16 | PG15 | PG14 |
|---|---|---|---|---|
1.4 | 1.4 | 1.4 | 1.4 | 1.4 |
This is a built-in contrib extension ship with the PostgreSQL kernel
Install
Create this extension with:
CREATE EXTENSION seg;Usage
The seg extension provides a data type for representing line segments or floating-point intervals, useful for representing measurements with uncertainty.
CREATE EXTENSION seg;Input Formats
SELECT '5.0'::seg; -- zero-length interval (point)
SELECT '5.0 .. 7.0'::seg; -- interval from 5.0 to 7.0
SELECT '5(+-)0.3'::seg; -- interval 4.7 .. 5.3
SELECT '50 ..'::seg; -- open interval >= 50
SELECT '.. 0'::seg; -- open interval <= 0Certainty indicators (<, >, ~) can be prepended but are treated as comments and ignored by operators.
Operators
Spatial operators (GiST-indexed):
| Operator | Description |
|---|---|
<< | Entirely left of |
>> | Entirely right of |
&< | Does not extend right of |
&> | Does not extend left of |
= | Equal |
&& | Overlaps |
@> | Contains |
<@ | Contained in |
Comparison operators (<, <=, >, >=) are available for sorting.
Index Support
CREATE INDEX idx ON measurements USING gist (reading);Precision
Values are stored as 32-bit floating-point pairs, retaining up to 7 significant digits. Trailing zeroes are preserved.
Last updated on