提交 f21d18a2 编写于 作者: D Daniel Gustafsson

Fix testfiles for contrib/seg

The seg contrib module has been missing the regress testfiles since
a merge in the past. This brings in the test files from 9.4 stable
such that we can again run installcheck on this module.
Reviewed-by: NJacob Champion <pchampion@pivotal.io>
Reviewed-by: NAshwin Agrawal <aagrawal@pivotal.io>
上级 f668a825
...10.3
...10.5
...3.5
...3.9
...4.9
...40
...5.6
...5.8
...6.0
...6.6
...6.7
...6.75
...7.0
...7.2
...7.3
...7.5
...7.6
...7.8
...8.0
...8.5
...8.6
...8.8
...8.9
...9.0
...9.2
...9.3
...9.5
...9.6
...90
...<3.0
...<5.8
...<7
...<7.0
...<8.0
...<8.2
...<8.9
...>10
...>7.2
...>7.7
...>8.0
...>82
...>9.0
< 1.0...3.8
< 1.5...4.1
< 1.5...4.15
< 10...>11.6
< 2...>4
< 2.0...3.4
< 2.0...4.2
< 2.0...>8.0
< 2.5...4.7
< 2.5...5.5
< 2.5...>8.5
< 3...>5
< 3.0...
< 3.0...4.5
< 3.0...6.0
< 3.0...6.5
< 3.0...9.0
< 3.0...>10
< 3.0...>11.0
< 3.0...>8.0
< 3.0...>9.0
< 3.0...>9.5
< 3.5
< 3.5...4.3
< 3.5...5.3
< 3.5...5.6
< 3.5...6.0
< 3.5...8.4
< 3.6...>6.5
< 3.7...5.4
< 4...9.5
< 4...>5
< 4...>6.0
< 4.0...
< 4.0...10.5
< 4.0...5.3
< 4.0...5.75
< 4.0...6.0
< 4.0...7.3
< 4.0...7.5
< 4.0...7.7
< 4.0...8.5
< 4.0...>12
< 4.0...>5.0
< 4.0...>6.0
< 4.0...>7.5
< 4.0...>8.0
< 4.0...>8.1
< 4.0...>9.0
< 4.2...5.2
< 4.2...5.3
< 4.2...5.4
< 4.2...6.2
< 4.3...>9.0
< 4.4
< 4.4...6.0
< 4.4...<6.0
< 4.5...6.3
< 4.5...7.2
< 4.5...>12
< 4.5...>5.0
< 4.5...>5.5
< 4.5...>6
< 4.5...>7.5
< 4.5...>8
< 4.5...>9.5
< 4.7...>9.3
< 4.8...>6.4
< 5...7.5
< 5...7.7
< 5...>7
< 5...>8
< 5...>8.0
< 5.0
< 5.0...10
< 5.0...6.3
< 5.0...7.4
< 5.0...7.7
< 5.0...8.1
< 5.0...8.3
< 5.0...8.5
< 5.0...8.8
< 5.0...9.5
< 5.0...<9.0
< 5.0...>10
< 5.0...>10.0
< 5.0...>10.5
< 5.0...>11
< 5.0...>6.0
< 5.0...>6.6
< 5.0...>7.5
< 5.0...>8.0
< 5.0...>8.5
< 5.0...>8.6
< 5.0...>9.0
< 5.2...7.3
< 5.2...8.2
< 5.2...8.5
< 5.2...>5.8
< 5.2...>7.6
< 5.3
< 5.3...6.5
< 5.3...7.5
< 5.3...7.8
< 5.4...6.35
< 5.5...10
< 5.5...6.3
< 5.5...7.0
< 5.5...7.5
< 5.5...8.4
< 5.5...8.5
< 5.5...>10
< 5.5...>10.0
< 5.5...>10.5
< 5.5...>6.5
< 5.5...>7
< 5.5...>7.5
< 5.5...>8
< 5.5...>8.0
< 5.5...>8.5
< 5.5...>8.7
< 5.5...>8.9
< 5.5...>9.0
< 5.6...6.75
< 5.75...>9.0
< 5.8...7.8
< 5.8...>11
< 5.8...>8.2
< 5.9...>8.0
< 6...>10.5
< 6...>8
< 6...>9.5
< 6.0
< 6.0...6.8
< 6.0...7.15
< 6.0...7.6
< 6.0...7.7
< 6.0...8.0
< 6.0...8.2
< 6.0...8.5
< 6.0...9.0
< 6.0...9.5
< 6.0...>10
< 6.0...>10.0
< 6.0...>11
< 6.0...>7.0
< 6.0...>8.0
< 6.0...>8.2
< 6.0...>8.5
< 6.0...>8.6
< 6.0...>9.0
< 6.0...>9.6
< 6.3...9.5
< 6.3...>6.7
< 6.3...>7.8
< 6.35...>7.7
< 6.4...>8.0
< 6.4...>8.7
< 6.5...11
< 6.5...7.25
< 6.5...8.0
< 6.5...8.2
< 6.5...8.4
< 6.5...8.5
< 6.5...9.7
< 6.5...>10.0
< 6.5...>10.5
< 6.5...>7.5
< 6.5...>8.0
< 6.5...>8.5
< 6.5...>8.6
< 6.5...>8.7
< 6.5...>9.0
< 6.5...>9.5
< 6.6...>7.5
< 6.6...>8.5
< 6.8...7.8
< 6.8...9.5
< 6.8...>7.5
< 6.8...>8.6
< 6.8...>9.0
< 6.9...9.0
< 7...9.2
< 7...>11
< 7...>7.5
< 7...>9.5
< 7.0
< 7.0...10
< 7.0...10.5
< 7.0...11.0
< 7.0...8.2
< 7.0...8.3
< 7.0...8.4
< 7.0...8.55
< 7.0...8.7
< 7.0...8.8
< 7.0...9.0
< 7.0...<8.0
< 7.0...>10.5
< 7.0...>11
< 7.0...>11.0
< 7.0...>7.0
< 7.0...>7.3
< 7.0...>7.4
< 7.0...>7.5
< 7.0...>7.75
< 7.0...>7.8
< 7.0...>8.0
< 7.0...>8.2
< 7.0...>8.5
< 7.0...>8.6
< 7.0...>8.9
< 7.0...>9.0
< 7.0...>9.5
< 7.2...8.3
< 7.2...>7.5
< 7.2...>7.8
< 7.2...>8.0
< 7.2...>8.2
< 7.2...>8.6
< 7.2...>8.8
< 7.4...>7.8
< 7.4...>8.0
< 7.4...>8.1
< 7.4...>8.6
< 7.4...>8.8
< 7.5...9.0
< 7.5...>10
< 7.5...>8.0
< 7.5...>8.5
< 7.5...>8.7
< 7.5...>9
< 7.5...>9.0
< 7.5...>9.5
< 7.6...>7.8
< 7.6...>8.0
< 7.6...>8.5
< 7.6...>8.6
< 7.6...>8.9
< 7.8...>9.0
< 7.9...>8.3
< 8.0
< 8.0...>10.0
< 8.0...>8.5
< 8.0...>9.0
< 8.0...>9.4
< 8.0...>9.5
< 8.2...9.8
< 8.2...>8.6
< 8.5...>10.5
< 8.5...>11
< 8.5...>9.5
< 9...10.5
<1.0...3.5
<1.0...3.7
<1.0...4.0
<1.0...>13.0
<1.0...>5.5
<10.5...11.5
<12.0...12.5
<2...10
<2...>4
<2.0
<2.0...11
<2.0...3.5
<2.0...5.7
<2.0...6.0
<2.0...6.8
<2.0...9.7
<2.0...>6.5
<2.0...>9.0
<2.3...
<2.3...>11.0
<2.4...6.8
<2.5...7.7
<2.5...>8.0
<2.8...>8.0
<3.0...4.6
<3.0...5.5
<3.0...6.0
<3.0...6.3
<3.0...6.4
<3.0...6.8
<3.0...7.0
<3.0...7.5
<3.0...8.3
<3.0...>10.5
<3.0...>5.0
<3.0...>7.0
<3.0...>7.2
<3.0...>8.5
<3.0...>8.7
<3.0...>9.0
<3.5...6.0
<3.5...8.0
<3.5...<7.0
<3.5...>10.0
<3.55...5.3
<3.7...4.9
<3.7...5.0
<4...6.5
<4.0...10.0
<4.0...10.5
<4.0...6.1
<4.0...6.3
<4.0...6.5
<4.0...7.7
<4.0...8.2
<4.0...<9.0
<4.0...>10
<4.0...>10.0
<4.0...>10.5
<4.0...>6.0
<4.0...>8.0
<4.0...>9.0
<4.1...>8.0
<4.3...7.6
<4.5...6.3
<4.5...6.5
<4.5...>6.5
<4.5...>9.5
<4.8...>7.4
<4.9...>9.5
<5...>6
<5...>6.0
<5...>8
<5.0...10.0
<5.0...6.0
<5.0...6.6
<5.0...6.8
<5.0...7.0
<5.0...7.5
<5.0...8.2
<5.0...9.5
<5.0...>11.0
<5.0...>5.5
<5.0...>7.0
<5.0...>8.0
<5.0...>9.0
<5.2...7.5
<5.2...>6.8
<5.2...>8.0
<5.3...10.2
<5.3...>10.5
<5.4...8.0
<5.4...8.5
<5.4...>8.2
<5.4...>9.1
<5.5...6.5
<5.5...7.0
<5.5...7.5
<5.5...8.2
<5.5...8.3
<5.5...8.5
<5.5...8.6
<5.5...>10.0
<5.5...>7.0
<5.5...>7.5
<5.5...>8.0
<5.5...>8.5
<5.5...>9.0
<5.6...7.5
<5.6...>6.4
<5.6...>7.4
<5.6...>8.0
<5.6...>8.5
<5.7...>7.1
<5.8...7.4
<5.8...>6.7
<5.8...>6.8
<5.8...>7.0
<5.8...>7.8
<5.8...>8.8
<5.85...>9.5
<6...>9
<6.0...10.0
<6.0...6.8
<6.0...7.1
<6.0...7.2
<6.0...7.7
<6.0...8.0
<6.0...8.2
<6.0...8.4
<6.0...8.5
<6.0...8.6
<6.0...9.1
<6.0...9.2
<6.0...9.3
<6.0...9.5
<6.0...>10
<6.0...>11.0
<6.0...>7.0
<6.0...>7.5
<6.0...>7.6
<6.0...>7.9
<6.0...>8.0
<6.0...>8.3
<6.0...>8.5
<6.0...>8.6
<6.0...>9.0
<6.0...>9.2
<6.0...>9.5
<6.1...8.4
<6.1...>6.6
<6.1...>8.1
<6.2
<6.2...6.9
<6.2...8.3
<6.2...>7.5
<6.2...>8.5
<6.2...>8.7
<6.3...10.0
<6.3...7.4
<6.3...9.6
<6.3...>7.0
<6.3...>8.0
<6.4...7.6
<6.4...8.5
<6.4...>8.5
<6.4...>9.0
<6.5...7.8
<6.5...8.2
<6.5...9.2
<6.5...>7.0
<6.5...>7.5
<6.5...>8.0
<6.5...>8.5
<6.5...>8.7
<6.5...>9.0
<6.5...>9.5
<6.6
<6.6...8.0
<6.8...8.0
<6.8...8.2
<6.8...>7.5
<6.8...>8.5
<6.8...>9.5
<7...9
<7...>10
<7.0...7.5
<7.0...9.0
<7.0...9.0
<7.0...9.4
<7.0...9.5
<7.0...9.5
<7.0...>10
<7.0...>10.0
<7.0...>11.5
<7.0...>7.5
<7.0...>8.0
<7.0...>8.3
<7.0...>8.4
<7.0...>8.5
<7.0...>9.0
<7.2...8.8
<7.2...9.0
<7.2...>8.2
<7.2...>8.8
<7.2...>9.5
<7.3...>8.0
<7.4...8.8
<7.4...9.6
<7.4...>8.5
<7.4...>8.7
<7.5...8.5
<7.5...<9.0
<7.5...>8.0
<7.5...>8.5
<7.5...>9.5
<7.6...>8.4
<7.6...>9.4
<7.8...>10.2
<7.8...>8.2
<8.0
<8.0...10.0
<8.0...>8.5
<8.0...>8.8
<8.0...>9.0
<8.2...>10.2
<8.5...9.6
<8.5...>9.0
<8.5...>9.5
<8.6...>10.6
<9.1...10.3
<9.2...>11.0
<9.5...12
<9.5...>12.2
> 11.0
> 3.0...<7.0
> 4.0...<10.0
> 4.0...<9.0
> 4.5...<9.0
> 5.0
> 5.0...<10.0
> 5.0...<11
> 5.5...
> 5.6
> 5.9...<9.5
> 6.0...8.0
> 6.0...<11.5
> 6.0...<8.0
> 6.0...>10.0
> 6.2...<7.4
> 7.0...<10
> 7.0...>8.5
> 7.0...>8.6
> 7.0...>8.7
> 7.15...
> 8.0
> 8.7
> 9.3
> 9.5
>10.5
>120
>2.3...
>3.0...<7.0
>3.8...<8.0
>4.0...<10
>5.0...<7.0
>5.0...>8.0
>5.0...>9.2
>5.25...6.5
>5.5...>9.3
>5.6...<8.2
>6.0...>11.0
>6.5...>8.0
>6.6...<7.3
>6.8...>8.5
>6.9...>8.0
>7.0
>7.0...<9.0
>7.0...<9.5
>7.3...
>7.5...<10.5
>8.0
>8.4
>8.5
>9.0
>9.4
>9.5
>95
~10
~23
~5.0...>9.0
~6.0
~6.4...~8.5
~6.8
~7.0
~7.5
~8.0
~8.0...~10.0
1.0
1.0...4.0
1.0...5.0
1.1
1.1...3.6
1.2...3.2
1.2...3.5
1.3...12.0
1.4...2.0
1.4...8.2
1.5
1.5...10.5
1.5...4.2
1.5...4.5
1.6...3.8
1.6...7.2
1.7
1.7...2.4
1.7...3.2
1.7...5.0
1.7...5.7
1.8
1.8...3.8
1.8...>9.0
1.9...3.6
2
2.0
2.0...10.0
2.0...11.0
2.0...11.5
2.0...2.5
2.0...3.2
2.0...3.5
2.0...4.0
2.0...4.3
2.0...4.4
2.0...4.6
2.0...4.75
2.0...4.8
2.0...5.0
2.0...5.5
2.0...6.5
2.0...7.0
2.0...7.5
2.0...8.0
2.0...9.0
2.0...>10
2.0...>4.0
2.0...>5.5
2.1
2.1...11.8
2.1...4.2
2.2
2.2...11.2
2.2...4.1
2.2...4.2
2.2...5.9
2.2...6.4
2.2...6.8
2.3...10.6
2.3...4.1
2.3...4.3
2.3...4.5
2.3...4.7
2.3...6.0
2.4
2.4...11.3
2.4...4.5
2.4...5.6
2.4...5.7
2.4...6.3
2.5
2.5...11
2.5...11.2
2.5...11.5
2.5...11.8
2.5...3.0
2.5...3.7
2.5...4.1
2.5...4.5
2.5...4.6
2.5...5.0
2.5...5.1
2.5...5.5
2.5...6.0
2.5...6.3
2.5...7.0
2.5...9.0
2.5...>3.5
2.5...>4.0
2.52
2.56
2.6...
2.6...10.0
2.6...9.3
2.6...>4.0
2.6...>9.4
2.62
2.7
2.7...12.0
2.7...3.7
2.7...3.8
2.7...4.5
2.7...4.7
2.7...6.0
2.7...6.4
2.7...7.0
2.7...8.0
2.75...5.25
2.79
2.8
2.8...11.0
2.8...3.4
2.8...4.0
2.8...7.0
2.8...8.0
2.8...9.0
2.8...9.7
2.9...3.7
2.9...4.5
2.9...5.0
2.9...5.6
2.9...6.1
2.9...7.6
2.9...9.0
2.97
3
3...10.0
3...10.5
3...5.5
3...58
3...6
3...8
3.0
3.0...10
3.0...10.0
3.0...10.5
3.0...11.0
3.0...3.5
3.0...4.0
3.0...4.5
3.0...4.9
3.0...5.0
3.0...5.4
3.0...5.6
3.0...5.65
3.0...6.0
3.0...6.3
3.0...6.5
3.0...6.7
3.0...6.9
3.0...7.0
3.0...7.2
3.0...7.5
3.0...8.0
3.0...8.5
3.0...8.7
3.0...9.0
3.0...9.7
3.0...>10
3.0...>10.0
3.0...>8.0
3.00...5.0
3.1
3.1...11.5
3.1...5.2
3.1...5.8
3.1...6.8
3.1...7.8
3.15...7.25
3.2
3.2...10.0
3.2...4.2
3.2...4.6
3.2...5.4
3.2...5.8
3.2...6.25
3.2...6.8
3.2...8.1
3.2...>8.0
3.2...>9.9
3.22
3.3
3.3...4.7
3.3...5.3
3.3...5.5
3.3...5.6
3.3...6.0
3.3...6.5
3.3...6.7
3.3...7.2
3.3...7.4
3.3...7.5
3.3...7.8
3.3...9.0
3.4
3.4...4.1
3.4...4.7
3.4...5.5
3.4...6.2
3.4...6.4
3.4...8.2
3.4...>8.0
3.5
3.5...10
3.5...10.0
3.5...10.5
3.5...10.8
3.5...11.0
3.5...11.5
3.5...12.2
3.5...4.0
3.5...4.4
3.5...4.5
3.5...5.0
3.5...5.3
3.5...5.5
3.5...5.6
3.5...6
3.5...6.0
3.5...6.3
3.5...6.4
3.5...6.5
3.5...6.6
3.5...6.7
3.5...7.0
3.5...7.2
3.5...7.3
3.5...7.5
3.5...8.5
3.5...8.6
3.5...8.7
3.5...9.0
3.5...9.5
3.5...>11.0
3.5...>5.0
3.5...>8.5
3.5...>9.0
3.6
3.6...3.8
3.6...4.55
3.6...4.6
3.6...4.8
3.6...5.4
3.6...5.5
3.6...6
3.6...6.0
3.6...6.6
3.6...6.8
3.6...7.0
3.6...7.7
3.6...8.6
3.6...8.7
3.6...8.8
3.7
3.7...10.0
3.7...10.6
3.7...4.6
3.7...5.3
3.7...6.2
3.7...6.3
3.7...6.5
3.7...6.7
3.7...8.2
3.7...8.3
3.7...9.1
3.7...>10
3.7...>11
3.75...5.7
3.8
3.8...10
3.8...4.0
3.8...4.5
3.8...4.8
3.8...5.5
3.8...5.8
3.8...5.9
3.8...6.2
3.8...7.7
3.8...8.3
3.8...8.7
3.9
3.9...5.5
3.9...6.8
3.9...7.8
3.9...>7.5
3.9...>8.5
3.9...>9.0
3.95
4
4...10
4...11.0
4...12
4...5
4...6.9
4...7
4...7.5
4...8
4...9
4...>11
4...>8
4.0
4.0...
4.0...10
4.0...10.0
4.0...10.4
4.0...10.5
4.0...11.0
4.0...11.7
4.0...12.5
4.0...13.0
4.0...4.4
4.0...4.5
4.0...4.8
4.0...5.0
4.0...5.1
4.0...5.2
4.0...5.5
4.0...5.7
4.0...5.75
4.0...5.8
4.0...6.0
4.0...6.1
4.0...6.2
4.0...6.3
4.0...6.5
4.0...60
4.0...7.0
4.0...7.2
4.0...7.3
4.0...7.5
4.0...7.7
4.0...7.9
4.0...8.0
4.0...8.1
4.0...8.2
4.0...8.3
4.0...8.5
4.0...8.8
4.0...9.0
4.0...9.4
4.0...>10
4.0...>11
4.0...>9.0
4.1
4.1...10.5
4.1...5.6
4.1...5.8
4.1...6.0
4.1...7.2
4.1...8.0
4.1...9.1
4.15...5.25
4.15...6.25
4.15...6.5
4.2
4.2...11.0
4.2...11.5
4.2...11.7
4.2...5.0
4.2...5.3
4.2...5.35
4.2...5.4
4.2...5.6
4.2...5.7
4.2...6.0
4.2...6.3
4.2...6.4
4.2...6.7
4.2...7.1
4.2...7.2
4.2...7.3
4.2...8.0
4.2...8.4
4.2...9.5
4.2...>7.0
4.2...>7.3
4.2...>9.0
4.2...>9.5
4.25
4.25...5.00
4.25...9.75
4.3
4.3...10.3
4.3...5.3
4.3...5.7
4.3...5.8
4.3...6.0
4.3...6.3
4.3...6.5
4.3...6.8
4.3...7.0
4.3...7.2
4.3...7.3
4.3...7.5
4.3...7.6
4.3...8
4.3...8.2
4.3...8.5
4.3...8.6
4.3...>5.0
4.3...>6.0
4.3...>7.0
4.3...>8.0
4.35
4.4
4.4...10.7
4.4...4.6
4.4...4.8
4.4...6.0
4.4...6.2
4.4...6.4
4.4...6.6
4.4...6.7
4.4...7.0
4.4...7.2
4.4...7.5
4.4...7.6
4.4...8.5
4.4...9.3
4.5
4.5...10
4.5...10.0
4.5...10.5
4.5...11.0
4.5...11.5
4.5...115
4.5...12.5
4.5...4.8
4.5...5.0
4.5...5.2
4.5...5.5
4.5...5.7
4.5...5.8
4.5...6.0
4.5...6.2
4.5...6.4
4.5...6.5
4.5...6.8
4.5...7
4.5...7.0
4.5...7.1
4.5...7.3
4.5...7.5
4.5...7.6
4.5...7.7
4.5...7.8
4.5...7.9
4.5...8.0
4.5...8.3
4.5...8.5
4.5...8.6
4.5...8.7
4.5...8.8
4.5...8.9
4.5...9.0
4.5...9.3
4.5...9.4
4.5...9.5
4.5...<12
4.5...>10
4.5...>12
4.5...>6.0
4.5...>7.0
4.5...>7.5
4.5...>8.0
4.5...>8.5
4.5...>9.0
4.6
4.6
4.6...4.8
4.6...5.0
4.6...5.2
4.6...6.3
4.6...6.4
4.6...6.5
4.6...6.6
4.6...7.0
4.6...7.2
4.6...7.4
4.6...7.5
4.6...8.2
4.6...8.5
4.6...8.6
4.6...8.7
4.6...<6.5
4.6...>10
4.6...>11
4.6...>7.4
4.6...>8.0
4.6...~7.0
4.7
4.7...10.8
4.7...11
4.7...11.8
4.7...5.6
4.7...6.0
4.7...6.2
4.7...6.3
4.7...6.6
4.7...6.7
4.7...7.0
4.7...7.4
4.7...7.5
4.7...7.7
4.7...7.8
4.7...8.0
4.7...8.3
4.7...8.4
4.7...8.5
4.7...9.3
4.7...9.5
4.7...9.6
4.7...9.7
4.7...>10
4.7...>10.0
4.7...>10.5
4.7...>6.5
4.7...>8.0
4.75
4.8
4.8...
4.8...10.3
4.8...11.5
4.8...11.6
4.8...12.5
4.8...5.2
4.8...5.9
4.8...6.0
4.8...6.2
4.8...6.3
4.8...7.0
4.8...7.3
4.8...7.4
4.8...7.5
4.8...7.6
4.8...7.7
4.8...7.75
4.8...8.0
4.8...8.2
4.8...8.4
4.8...8.6
4.8...9.0
4.8...9.3
4.8...9.7
4.8...>10.0
4.8...>8.0
4.8...>9.0
4.85
4.9
4.9...
4.9...6.5
4.9...7.2
4.9...7.8
4.9...8.2
4.9...8.3
4.9...9.0
4.9...9.5
4.9...<6.0
4.9...>12
4.9...>7.5
4.9...>9.5
5
5...10.0
5...10.5
5...11
5...11.5
5...12
5...30
5...6
5...6.6
5...7
5...8
5...8.5
5...9
5...9.5
5.0
5.0...10
5.0...10.0
5.0...10.2
5.0...10.3
5.0...10.5
5.0...11
5.0...11.0
5.0...11.2
5.0...11.4
5.0...11.5
5.0...11.6
5.0...11.7
5.0...12.0
5.0...5.5
5.0...5.7
5.0...6.0
5.0...6.1
5.0...6.2
5.0...6.4
5.0...6.5
5.0...6.6
5.0...6.8
5.0...6.9
5.0...7.0
5.0...7.2
5.0...7.3
5.0...7.4
5.0...7.5
5.0...7.6
5.0...7.7
5.0...7.8
5.0...8.0
5.0...8.2
5.0...8.3
5.0...8.4
5.0...8.5
5.0...8.6
5.0...8.7
5.0...9.0
5.0...9.0
5.0...9.2
5.0...9.5
5.0...>10
5.0...>10.0
5.0...>11
5.0...>12
5.0...>12.0
5.0...>7.0
5.0...>8.0
5.0...>8.4
5.0...>8.5
5.0...>9.0
5.02...6.74
5.1
5.1...5.3
5.1...5.4
5.1...6.2
5.1...6.3
5.1...6.4
5.1...6.6
5.1...6.8
5.1...7.0
5.1...7.2
5.1...7.3
5.1...7.8
5.1...8.0
5.1...8.3
5.1...8.7
5.1...>7.0
5.15
5.2
5.2...10.0
5.2...10.8
5.2...11.5
5.2...5.3
5.2...5.5
5.2...5.7
5.2...6.0
5.2...6.2
5.2...6.4
5.2...6.7
5.2...6.8
5.2...6.9
5.2...7.0
5.2...7.3
5.2...7.4
5.2...7.5
5.2...7.6
5.2...7.7
5.2...7.9
5.2...8.0
5.2...8.2
5.2...8.4
5.2...8.5
5.2...8.7
5.2...8.8
5.2...9.0
5.2...9.5
5.2...9.6
5.2...9.7
5.2...9.9
5.2...>10.0
5.2...>11
5.2...>12
5.2...>6.5
5.2...>7.0
5.2...>7.5
5.2...>8
5.2...>8.0
5.25...7.5
5.25...8.5
5.25...>12
5.3
5.3...
5.3...10.0
5.3...10.1
5.3...10.2
5.3...10.5
5.3...10.6
5.3...11.5
5.3...13
5.3...5.5
5.3...5.8
5.3...7.0
5.3...7.2
5.3...7.4
5.3...7.5
5.3...7.6
5.3...7.8
5.3...8.0
5.3...8.2
5.3...8.3
5.3...8.6
5.3...8.7
5.3...8.8
5.3...8.9
5.3...9.0
5.3...9.3
5.3...9.5
5.3...9.7
5.3...9.9
5.3...>7.8
5.3...>9.0
5.3...>90
5.35
5.4
5.4...
5.4...10
5.4...10.5
5.4...5.8
5.4...6.8
5.4...7.0
5.4...7.1
5.4...7.2
5.4...7.3
5.4...7.7
5.4...7.8
5.4...8.2
5.4...8.5
5.4...9.4
5.4...>10.0
5.4...>11.0
5.4...>9.0
5.45
5.5
5.5...
5.5...10.0
5.5...10.2
5.5...10.5
5.5...11
5.5...11.5
5.5...11.7
5.5...12
5.5...12.5
5.5...13.5
5.5...5.6
5.5...5.7
5.5...5.8
5.5...6
5.5...6.0
5.5...6.2
5.5...6.3
5.5...6.5
5.5...6.7
5.5...6.8
5.5...7.0
5.5...7.1
5.5...7.2
5.5...7.3
5.5...7.4
5.5...7.5
5.5...7.6
5.5...7.7
5.5...7.9
5.5...8.0
5.5...8.1
5.5...8.2
5.5...8.5
5.5...8.6
5.5...8.7
5.5...9.0
5.5...9.1
5.5...9.3
5.5...9.5
5.5...9.7
5.5...<6.8
5.5...>10
5.5...>10.0
5.5...>11
5.5...>11.0
5.5...>12
5.5...>7.0
5.5...>8.0
5.5...>9.0
5.5...>9.5
5.55
5.55...7.8
5.56
5.6
5.6...10
5.6...10.1
5.6...6.0
5.6...6.2
5.6...6.4
5.6...6.6
5.6...7.0
5.6...7.1
5.6...7.2
5.6...7.3
5.6...7.4
5.6...7.5
5.6...7.6
5.6...7.7
5.6...8.0
5.6...8.3
5.6...8.4
5.6...8.5
5.6...8.75
5.6...8.8
5.6...9
5.6...9.0
5.6...9.4
5.6...9.5
5.6...9.6
5.6...>11
5.6...>7.0
5.6...>7.5
5.6...>8.0
5.6...>9.0
5.65
5.7
5.7...
5.7...10
5.7...10.0
5.7...11
5.7...6.0
5.7...6.2
5.7...6.3
5.7...6.5
5.7...6.8
5.7...7.0
5.7...7.2
5.7...7.3
5.7...7.5
5.7...7.6
5.7...7.65
5.7...7.7
5.7...7.8
5.7...7.9
5.7...8.0
5.7...8.4
5.7...8.5
5.7...8.7
5.7...8.9
5.7...9.0
5.7...9.2
5.7...9.4
5.7...9.7
5.7...>10.0
5.7...>11
5.7...>6.6
5.7...>7.2
5.7...>8.5
5.7...>9.0
5.73
5.75
5.75...7.3
5.8
5.8...10.0
5.8...11
5.8...6.0
5.8...6.2
5.8...6.5
5.8...6.7
5.8...6.8
5.8...6.9
5.8...7.0
5.8...7.2
5.8...7.3
5.8...7.4
5.8...7.5
5.8...7.6
5.8...7.7
5.8...7.8
5.8...8.0
5.8...8.1
5.8...8.2
5.8...8.3
5.8...8.4
5.8...8.5
5.8...8.6
5.8...8.8
5.8...9.0
5.8...9.2
5.8...9.3
5.8...9.8
5.8...>10.5
5.8...>11
5.8...>6.7
5.8...>6.8
5.8...>8.0
5.8...>9.0
5.85
5.87
5.9
5.9...
5.9...10.2
5.9...6.0
5.9...6.5
5.9...7.3
5.9...7.5
5.9...7.7
5.9...8.0
5.9...8.2
5.9...8.3
5.9...8.4
5.9...8.5
5.9...8.7
5.9...9.0
5.9...>7.0
5.9...>8.5
5.92
5.95...8.0
6
6...10
6...11
6...11.5
6...6.5
6...8
6...8.0
6...8.5
6...9
6...9.2
6...9.3
6...>10
6...>12
6...>7.2
6...>8
6.0
6.0
6.0...10
6.0...10.0
6.0...10.2
6.0...10.3
6.0...10.4
6.0...10.5
6.0...11
6.0...11.0
6.0...11.5
6.0...13
6.0...6.2
6.0...6.3
6.0...6.4
6.0...6.5
6.0...6.6
6.0...6.7
6.0...6.8
6.0...7.0
6.0...7.2
6.0...7.3
6.0...7.4
6.0...7.5
6.0...7.6
6.0...7.7
6.0...7.8
6.0...8.0
6.0...8.1
6.0...8.2
6.0...8.3
6.0...8.4
6.0...8.5
6.0...8.5
6.0...8.6
6.0...8.7
6.0...8.9
6.0...9.0
6.0...9.1
6.0...9.2
6.0...9.3
6.0...9.4
6.0...9.5
6.0...9.7
6.0...9.8
6.0...9.9
6.0...>10.0
6.0...>10.5
6.0...>11
6.0...>7.0
6.0...>7.5
6.0...>8.0
6.0...>8.2
6.0...>8.5
6.0...>8.7
6.0...>9.0
6.0...>9.5
6.01
6.1
6.1...
6.1...10
6.1...10.8
6.1...6.2
6.1...6.6
6.1...6.8
6.1...6.9
6.1...7.0
6.1...7.2
6.1...7.5
6.1...7.6
6.1...7.7
6.1...7.8
6.1...7.9
6.1...8.0
6.1...8.2
6.1...8.5
6.1...8.7
6.1...8.9
6.1...9.0
6.1...9.3
6.1...9.4
6.1...>12
6.1...>8.0
6.1...>8.2
6.1...>8.5
6.1...>9.0
6.1...>9.5
6.15
6.18
6.2
6.2...10
6.2...10.0
6.2...10.5
6.2...11
6.2...6.4
6.2...6.5
6.2...6.8
6.2...6.9
6.2...7.0
6.2...7.2
6.2...7.4
6.2...7.5
6.2...7.6
6.2...7.7
6.2...7.8
6.2...8.0
6.2...8.1
6.2...8.2
6.2...8.3
6.2...8.4
6.2...8.5
6.2...8.6
6.2...8.7
6.2...8.8
6.2...9.0
6.2...9.1
6.2...9.2
6.2...9.5
6.2...9.7
6.2...9.8
6.2...>10.5
6.2...>11.5
6.2...>7.1
6.2...>7.8
6.2...>8.0
6.2...>9.0
6.2...>9.5
6.23...8.07
6.24
6.25
6.25...7.5
6.25...>9.0
6.3
6.3...
6.3...10.0
6.3...10.2
6.3...10.4
6.3...10.5
6.3...6.4
6.3...6.5
6.3...6.6
6.3...6.7
6.3...6.8
6.3...7.3
6.3...7.5
6.3...7.7
6.3...7.8
6.3...7.9
6.3...8.0
6.3...8.2
6.3...8.3
6.3...8.5
6.3...8.6
6.3...8.7
6.3...8.9
6.3...9.0
6.3...9.1
6.3...9.2
6.3...9.3
6.3...9.4
6.3...9.5
6.3...9.7
6.3...9.8
6.3...>10.0
6.3...>11
6.3...>7.5
6.3...>7.8
6.3...>8.0
6.3...>8.1
6.3...>8.3
6.3...>8.5
6.3...>9.0
6.3...>9.2
6.35
6.4
6.4...7.7
6.4...10
6.4...10.8
6.4...6.7
6.4...6.8
6.4...7.0
6.4...7.2
6.4...7.4
6.4...7.5
6.4...7.6
6.4...7.7
6.4...7.8
6.4...8.0
6.4...8.1
6.4...8.2
6.4...8.3
6.4...8.4
6.4...8.6
6.4...8.7
6.4...8.8
6.4...9.0
6.4...9.3
6.4...>10
6.4...>11.0
6.4...>7.8
6.4...>8.0
6.4...>8.5
6.4...>8.6
6.4...>9.0
6.4...>9.1
6.4...>9.2
6.4...>9.5
6.42
6.5
6.5
6.5...
6.5...10
6.5...10.0
6.5...10.2
6.5...10.3
6.5...10.5
6.5...11
6.5...11.0
6.5...11.5
6.5...12.0
6.5...6.7
6.5...6.75
6.5...6.8
6.5...6.9
6.5...7.0
6.5...7.1
6.5...7.3
6.5...7.4
6.5...7.5
6.5...7.6
6.5...7.7
6.5...7.8
6.5...7.9
6.5...8.0
6.5...8.1
6.5...8.2
6.5...8.25
6.5...8.3
6.5...8.4
6.5...8.5
6.5...8.6
6.5...8.7
6.5...8.8
6.5...8.9
6.5...9
6.5...9.0
6.5...9.2
6.5...9.3
6.5...9.5
6.5...9.7
6.5...9.8
6.5...>10
6.5...>10.0
6.5...>11
6.5...>11.0
6.5...>12.0
6.5...>7.0
6.5...>7.9
6.5...>8.0
6.5...>8.3
6.5...>8.5
6.5...>8.7
6.5...>8.8
6.5...>9.0
6.5...>9.5
6.51
6.55
6.6
6.6...
6.6...7.0
6.6...7.1
6.6...7.3
6.6...7.4
6.6...7.5
6.6...7.9
6.6...8.3
6.6...8.4
6.6...8.5
6.6...8.6
6.6...8.7
6.6...8.8
6.6...8.9
6.6...9.0
6.6...9.4
6.6...9.7
6.6...9.8
6.6...>10.0
6.6...>10.3
6.6...>11
6.6...>9.0
6.6...>9.5
6.65...8.6
6.67
6.7
6.7...
6.7...10.2
6.7...11.5
6.7...6.8
6.7...6.9
6.7...7.0
6.7...7.3
6.7...7.4
6.7...7.5
6.7...7.6
6.7...7.8
6.7...8.0
6.7...8.1
6.7...8.2
6.7...8.3
6.7...8.5
6.7...8.6
6.7...8.7
6.7...8.8
6.7...8.9
6.7...9.0
6.7...9.1
6.7...9.2
6.7...9.5
6.7...9.7
6.7...9.8
6.7...>10
6.7...>7.0
6.7...>7.5
6.7...>8.0
6.7...>8.5
6.7...>8.6
6.7...>9
6.7...>9.0
6.7...>9.3
6.74...8.0
6.75
6.75...
6.75...9.5
6.75...>9
6.75...>9.0
6.75...>9.5
6.76...8.10
6.8
6.8...
6.8...10
6.8...10.0
6.8...10.5
6.8...6.9
6.8...7.0
6.8...7.1
6.8...7.2
6.8...7.3
6.8...7.5
6.8...7.6
6.8...7.7
6.8...7.8
6.8...7.9
6.8...8.0
6.8...8.2
6.8...8.25
6.8...8.3
6.8...8.5
6.8...8.6
6.8...8.7
6.8...8.8
6.8...8.9
6.8...9.0
6.8...9.1
6.8...9.3
6.8...9.4
6.8...9.5
6.8...9.6
6.8...9.9
6.8...>10.0
6.8...>7.9
6.8...>8.0
6.8...>8.1
6.8...>8.5
6.8...>9.0
6.8...>9.1
6.80...>8.5
6.81...7.53
6.85
6.86
6.88
6.9
6.9...
6.9...10.4
6.9...12.2
6.9...7.0
6.9...7.1
6.9...7.3
6.9...7.6
6.9...7.9
6.9...8.0
6.9...8.2
6.9...8.4
6.9...8.5
6.9...8.6
6.9...8.7
6.9...8.8
6.9...9.0
6.9...9.1
6.9...9.2
6.9...9.5
6.9...9.7
6.9...>7.1
6.9...>8
6.9...>8.5
6.9...>9
6.9...>9.0
6.9...>9.3
6.9...>9.5
6.9...>90
7
7...10
7...10.5
7...11
7...7.5
7...8
7...8.5
7...8.8
7...9
7...>10
7...>10.5
7...>9.5
7.0
7.0
7.0...
7.0...10
7.0...10.0
7.0...10.2
7.0...10.3
7.0...10.5
7.0...10.7
7.0...11
7.0...11.0
7.0...11.5
7.0...7.2
7.0...7.2
7.0...7.3
7.0...7.4
7.0...7.5
7.0...7.6
7.0...7.8
7.0...7.9
7.0...8.0
7.0...8.1
7.0...8.2
7.0...8.3
7.0...8.4
7.0...8.5
7.0...8.6
7.0...8.67
7.0...8.7
7.0...8.8
7.0...8.9
7.0...9.0
7.0...9.1
7.0...9.2
7.0...9.3
7.0...9.4
7.0...9.5
7.0...9.7
7.0...9.75
7.0...9.8
7.0...9.9
7.0...<8.0
7.0...>10
7.0...>10.0
7.0...>10.5
7.0...>11
7.0...>11.5
7.0...>7.8
7.0...>8.5
7.0...>8.7
7.0...>9
7.0...>9.0
7.0...>9.5
7.00
7.01
7.03
7.05
7.07
7.1
7.1...10.1
7.1...10.3
7.1...7.9
7.1...8.1
7.1...8.2
7.1...8.3
7.1...8.4
7.1...8.6
7.1...8.7
7.1...8.9
7.1...9.0
7.1...9.2
7.1...9.3
7.1...9.4
7.1...9.8
7.1...>8.3
7.1...>8.5
7.1...>9.0
7.1...>9.5
7.10
7.15
7.15...8.3
7.2
7.2...10.0
7.2...10.2
7.2...10.5
7.2...13.5
7.2...7.3
7.2...7.4
7.2...7.5
7.2...7.6
7.2...7.8
7.2...8.0
7.2...8.2
7.2...8.3
7.2...8.6
7.2...8.7
7.2...8.8
7.2...8.9
7.2...9.0
7.2...9.1
7.2...9.2
7.2...9.3
7.2...9.5
7.2...9.6
7.2...9.7
7.2...9.8
7.2...>10
7.2...>10.0
7.2...>11
7.2...>8.0
7.2...>8.5
7.2...>8.7
7.2...>9.0
7.2...>9.1
7.2...>9.2
7.2...>9.5
7.24
7.25
7.25...7.75
7.25...8.1
7.25...8.25
7.25...8.4
7.25...8.6
7.25...8.7
7.25...9.25
7.25...>10.0
7.25...>8.0
7.25...>8.25
7.25...>9.0
7.26
7.3
7.3...
7.3...10.2
7.3...10.5
7.3...11
7.3...7.5
7.3...7.6
7.3...7.8
7.3...7.9
7.3...8.0
7.3...8.2
7.3...8.3
7.3...8.4
7.3...8.5
7.3...8.6
7.3...8.8
7.3...8.9
7.3...9.0
7.3...9.15
7.3...9.2
7.3...9.4
7.3...9.5
7.3...9.8
7.3...9.9
7.3...>10
7.3...>10.0
7.3...>10.5
7.3...>7.8
7.3...>8.0
7.3...>8.3
7.3...>9.0
7.3...>9.2
7.3...>9.3
7.3...>9.5
7.3...>9.75
7.3...>90
7.32
7.35
7.4
7.4...
7.4...10
7.4...10.0
7.4...12.1
7.4...7.6
7.4...7.8
7.4...8.0
7.4...8.2
7.4...8.3
7.4...8.4
7.4...8.5
7.4...8.6
7.4...8.7
7.4...8.8
7.4...9.0
7.4...9.2
7.4...9.3
7.4...9.6
7.4...9.7
7.4...9.8
7.4...>10.0
7.4...>8
7.4...>8.5
7.4...>8.6
7.4...>8.7
7.4...>9.0
7.45
7.5
7.5
7.5...
7.5...10
7.5...10.0
7.5...10.1
7.5...10.2
7.5...10.3
7.5...10.5
7.5...10.8
7.5...11
7.5...11.0
7.5...11.5
7.5...12.0
7.5...7.6
7.5...7.8
7.5...8
7.5...8.0
7.5...8.1
7.5...8.2
7.5...8.4
7.5...8.5
7.5...8.6
7.5...8.7
7.5...9.0
7.5...9.1
7.5...9.2
7.5...9.3
7.5...9.4
7.5...9.5
7.5...9.6
7.5...9.7
7.5...9.8
7.5...>10
7.5...>10.0
7.5...>10.5
7.5...>11.0
7.5...>8.3
7.5...>8.5
7.5...>8.7
7.5...>8.75
7.5...>9
7.5...>9.0
7.5...>9.2
7.5...>9.5
7.54
7.55
7.6
7.6
7.6...10.3
7.6...10.5
7.6...7.8
7.6...7.9
7.6...8.0
7.6...8.2
7.6...8.3
7.6...8.4
7.6...8.5
7.6...8.6
7.6...8.8
7.6...9.0
7.6...9.2
7.6...9.3
7.6...9.4
7.6...9.5
7.6...9.7
7.6...>10.0
7.6...>10.3
7.6...>10.5
7.6...>11
7.6...>8.25
7.6...>8.8
7.6...>9.0
7.6...>9.5
7.65
7.7...
7.7...10
7.7...10.0
7.7...10.3
7.7...10.5
7.7...11.0
7.7...11.5
7.7...7.8
7.7...8.0
7.7...8.3
7.7...8.5
7.7...8.7
7.7...9.0
7.7...9.25
7.7...9.4
7.7...9.5
7.7...9.8
7.7...>10.5
7.7...>8.5
7.7...>8.6
7.7...>9.0
7.7...>9.5
7.72...8.7
7.75
7.75...
7.75...8.1
7.78
7.8
7.8...10.2
7.8...7.9
7.8...8.0
7.8...8.1
7.8...8.2
7.8...8.4
7.8...8.5
7.8...8.7
7.8...8.8
7.8...8.9
7.8...9.0
7.8...9.2
7.8...9.3
7.8...9.4
7.8...9.6
7.8...<9.8
7.8...>10.0
7.8...>8.8
7.8...>8.9
7.8...>9.0
7.8...>9.1
7.8...>9.4
7.80
7.85
7.9
7.9...10.9
7.9...8.1
7.9...8.2
7.9...8.3
7.9...8.5
7.9...8.6
7.9...8.9
7.9...9.0
7.9...9.3
7.96
8
8...10
8...10.2
8...10.5
8...11.0
8...8.5
8...9
8...>10
8...>11
8.0
8.0...10
8.0...10.0
8.0...10.2
8.0...10.3
8.0...10.5
8.0...10.8
8.0...11.0
8.0...11.2
8.0...11.7
8.0...12.0
8.0...8.5
8.0...8.12
8.0...8.2
8.0...8.4
8.0...8.5
8.0...8.6
8.0...8.7
8.0...8.8
8.0...8.9
8.0...9.0
8.0...9.2
8.0...9.4
8.0...9.5
8.0...9.7
8.0...>10
8.0...>10.0
8.0...>10.5
8.0...>11
8.0...>13.0
8.0...>8.75
8.0...>9.0
8.0...>9.2
8.0...>9.5
8.1
8.1...10.5
8.1...10.9
8.1...8.2
8.1...8.3
8.1...8.4
8.1...8.6
8.1...8.7
8.1...8.75
8.1...8.9
8.1...9.1
8.1...9.9
8.1...>9.5
8.13
8.15
8.2
8.2...
8.2...10.2
8.2...10.4
8.2...8.4
8.2...8.5
8.2...8.8
8.2...8.9
8.2...9.0
8.2...9.6
8.2...9.8
8.2...>10
8.2...>10.5
8.2...>11
8.2...>11.0
8.2...>8.8
8.2...>9.3
8.20
8.25
8.25...10.2
8.27
8.27...10
8.28
8.3
8.3...
8.3...10.2
8.3...10.3
8.3...10.8
8.3...8.4
8.3...8.5
8.3...8.6
8.3...8.8
8.3...9.6
8.3...9.9
8.3...>9.5
8.3...>9.8
8.35
8.4
8.4...10.1
8.4...8.5
8.4...8.6
8.4...8.7
8.4...8.8
8.4...8.9
8.4...9.0
8.4...9.2
8.4...9.5
8.4...<9.8
8.4...>10.0
8.4...>10.5
8.4...>9.8
8.48
8.5
8.5...
8.5...10.0
8.5...10.3
8.5...10.5
8.5...10.7
8.5...10.8
8.5...11
8.5...11.0
8.5...12.5
8.5...8.6
8.5...8.8
8.5...9.0
8.5...9.1
8.5...9.2
8.5...9.3
8.5...9.4
8.5...9.5
8.5...9.9
8.5...>10
8.5...>11
8.5...>11.5
8.5...>9.5
8.6
8.6...10.2
8.6...10.3
8.6...11
8.6...8.7
8.6...8.8
8.6...8.9
8.6...9.4
8.6...>11
8.6...>99
8.65
8.7
8.7...10.6
8.7...11.2
8.7...11.3
8.7...11.7
8.7...8.9
8.7...9.1
8.7...9.6
8.7...9.8
8.75
8.8
8.8...10.3
8.8...10.7
8.8...9.0
8.8...9.2
8.8...9.8
8.8...>9.8
8.9
8.9...10.3
8.9...10.4
8.9...10.9
8.9...11.5
8.9...9.2
9
9.8
9...10
9...11
9...>12
9.0
9.0...
9.0...10
9.0...10.0
9.0...10.5
9.0...10.7
9.0...11
9.0...11.0
9.0...11.1
9.0...11.2
9.0...11.3
9.0...11.5
9.0...12
9.0...9.2
9.0...9.5
9.0...>10.7
9.0...>11.0
9.1
9.1...10
9.1...10.1
9.1...9.5
9.15
9.2
9.2...10
9.2...10.8
9.2...12
9.2...9.3
9.2...9.4
9.2...9.5
9.2...9.6
9.25
9.3
9.4
9.4...10
9.4...12.2
9.4...9.7
9.5
9.5...
9.5...10
9.5...10.0
9.5...10.4
9.5...10.5
9.5...10.6
9.5...11.2
9.5...9.8
9.5...>10.2
9.5...>10.5
9.55
9.6
9.6...10
9.6...10.2
9.6...11.5
9.6...>11.2
9.63
9.7
9.7...11
9.7...11.5
9.7...9.8
9.7...>12
9.75
9.76
9.8
9.8...10.0
9.8...10.1
9.8...>12.5
9.9
9.99
10
10...10.5
10...11
10.0
10.0...10.4
10.0...10.5
10.0...11.25
10.0...11.5
10.0...12.5
10.0...>12.5
10.2
10.2...11.8
10.25
10.3
10.32
10.4
10.45
10.5
10.5...11.0
10.5...11.5
10.5...<13.5
10.6
10.7
10.7...12.3
10.70
10.75
10.8
11
11
11.0
11.3
11.5
11.5...12.5
11.75
12
12.0
12.2
14
15
16
16.7
17
18
19
19.8
20
20.0
22
22
22.9
23
23...25
23.7
24
24.0
\N
--
-- Test seg datatype
--
CREATE EXTENSION seg;
--
-- testing the input and output functions
--
-- Any number
SELECT '1'::seg AS seg;
seg
-----
1
(1 row)
SELECT '-1'::seg AS seg;
seg
-----
-1
(1 row)
SELECT '1.0'::seg AS seg;
seg
-----
1.0
(1 row)
SELECT '-1.0'::seg AS seg;
seg
------
-1.0
(1 row)
SELECT '1e7'::seg AS seg;
seg
-------
1e+07
(1 row)
SELECT '-1e7'::seg AS seg;
seg
--------
-1e+07
(1 row)
SELECT '1.0e7'::seg AS seg;
seg
---------
1.0e+07
(1 row)
SELECT '-1.0e7'::seg AS seg;
seg
----------
-1.0e+07
(1 row)
SELECT '1e+7'::seg AS seg;
seg
-------
1e+07
(1 row)
SELECT '-1e+7'::seg AS seg;
seg
--------
-1e+07
(1 row)
SELECT '1.0e+7'::seg AS seg;
seg
---------
1.0e+07
(1 row)
SELECT '-1.0e+7'::seg AS seg;
seg
----------
-1.0e+07
(1 row)
SELECT '1e-7'::seg AS seg;
seg
-------
1e-07
(1 row)
SELECT '-1e-7'::seg AS seg;
seg
--------
-1e-07
(1 row)
SELECT '1.0e-7'::seg AS seg;
seg
---------
1.0e-07
(1 row)
SELECT '-1.0e-7'::seg AS seg;
seg
----------
-1.0e-07
(1 row)
SELECT '2e-6'::seg AS seg;
seg
-------
2e-06
(1 row)
SELECT '2e-5'::seg AS seg;
seg
-------
2e-05
(1 row)
SELECT '2e-4'::seg AS seg;
seg
--------
0.0002
(1 row)
SELECT '2e-3'::seg AS seg;
seg
-------
0.002
(1 row)
SELECT '2e-2'::seg AS seg;
seg
------
0.02
(1 row)
SELECT '2e-1'::seg AS seg;
seg
-----
0.2
(1 row)
SELECT '2e-0'::seg AS seg;
seg
-----
2
(1 row)
SELECT '2e+0'::seg AS seg;
seg
-----
2
(1 row)
SELECT '2e+1'::seg AS seg;
seg
-----
2e1
(1 row)
SELECT '2e+2'::seg AS seg;
seg
-----
2e2
(1 row)
SELECT '2e+3'::seg AS seg;
seg
-----
2e3
(1 row)
SELECT '2e+4'::seg AS seg;
seg
-----
2e4
(1 row)
SELECT '2e+5'::seg AS seg;
seg
-------
2e+05
(1 row)
SELECT '2e+6'::seg AS seg;
seg
-------
2e+06
(1 row)
-- Significant digits preserved
SELECT '1'::seg AS seg;
seg
-----
1
(1 row)
SELECT '1.0'::seg AS seg;
seg
-----
1.0
(1 row)
SELECT '1.00'::seg AS seg;
seg
------
1.00
(1 row)
SELECT '1.000'::seg AS seg;
seg
-------
1.000
(1 row)
SELECT '1.0000'::seg AS seg;
seg
--------
1.0000
(1 row)
SELECT '1.00000'::seg AS seg;
seg
---------
1.00000
(1 row)
SELECT '1.000000'::seg AS seg;
seg
---------
1.00000
(1 row)
SELECT '0.000000120'::seg AS seg;
seg
----------
1.20e-07
(1 row)
SELECT '3.400e5'::seg AS seg;
seg
-----------
3.400e+05
(1 row)
-- Digits truncated
SELECT '12.34567890123456'::seg AS seg;
seg
---------
12.3457
(1 row)
-- Numbers with certainty indicators
SELECT '~6.5'::seg AS seg;
seg
------
~6.5
(1 row)
SELECT '<6.5'::seg AS seg;
seg
------
<6.5
(1 row)
SELECT '>6.5'::seg AS seg;
seg
------
>6.5
(1 row)
SELECT '~ 6.5'::seg AS seg;
seg
------
~6.5
(1 row)
SELECT '< 6.5'::seg AS seg;
seg
------
<6.5
(1 row)
SELECT '> 6.5'::seg AS seg;
seg
------
>6.5
(1 row)
-- Open intervals
SELECT '0..'::seg AS seg;
seg
------
0 ..
(1 row)
SELECT '0...'::seg AS seg;
seg
------
0 ..
(1 row)
SELECT '0 ..'::seg AS seg;
seg
------
0 ..
(1 row)
SELECT '0 ...'::seg AS seg;
seg
------
0 ..
(1 row)
SELECT '..0'::seg AS seg;
seg
------
.. 0
(1 row)
SELECT '...0'::seg AS seg;
seg
------
.. 0
(1 row)
SELECT '.. 0'::seg AS seg;
seg
------
.. 0
(1 row)
SELECT '... 0'::seg AS seg;
seg
------
.. 0
(1 row)
-- Finite intervals
SELECT '0 .. 1'::seg AS seg;
seg
--------
0 .. 1
(1 row)
SELECT '-1 .. 0'::seg AS seg;
seg
---------
-1 .. 0
(1 row)
SELECT '-1 .. 1'::seg AS seg;
seg
---------
-1 .. 1
(1 row)
-- (+/-) intervals
SELECT '0(+-)1'::seg AS seg;
seg
---------
-1 .. 1
(1 row)
SELECT '0(+-)1.0'::seg AS seg;
seg
-------------
-1.0 .. 1.0
(1 row)
SELECT '1.0(+-)0.005'::seg AS seg;
seg
----------------
0.995 .. 1.005
(1 row)
SELECT '101(+-)1'::seg AS seg;
seg
------------------
1.00e2 .. 1.02e2
(1 row)
-- incorrect number of significant digits in 99.0:
SELECT '100(+-)1'::seg AS seg;
seg
----------------
99.0 .. 1.01e2
(1 row)
-- invalid input
SELECT ''::seg AS seg;
ERROR: bad seg representation
LINE 1: SELECT ''::seg AS seg;
^
DETAIL: syntax error at end of input
SELECT 'ABC'::seg AS seg;
ERROR: bad seg representation
LINE 1: SELECT 'ABC'::seg AS seg;
^
DETAIL: syntax error at or near "A"
SELECT '1ABC'::seg AS seg;
ERROR: bad seg representation
LINE 1: SELECT '1ABC'::seg AS seg;
^
DETAIL: syntax error at or near "A"
SELECT '1.'::seg AS seg;
ERROR: bad seg representation
LINE 1: SELECT '1.'::seg AS seg;
^
DETAIL: syntax error at or near "."
SELECT '1.....'::seg AS seg;
ERROR: bad seg representation
LINE 1: SELECT '1.....'::seg AS seg;
^
DETAIL: syntax error at or near ".."
SELECT '.1'::seg AS seg;
ERROR: bad seg representation
LINE 1: SELECT '.1'::seg AS seg;
^
DETAIL: syntax error at or near "."
SELECT '1..2.'::seg AS seg;
ERROR: bad seg representation
LINE 1: SELECT '1..2.'::seg AS seg;
^
DETAIL: syntax error at or near "."
SELECT '1 e7'::seg AS seg;
ERROR: bad seg representation
LINE 1: SELECT '1 e7'::seg AS seg;
^
DETAIL: syntax error at or near "e"
SELECT '1e700'::seg AS seg;
ERROR: "1e700" is out of range for type real
LINE 1: SELECT '1e700'::seg AS seg;
^
--
-- testing the operators
--
-- equality/inequality:
--
SELECT '24 .. 33.20'::seg = '24 .. 33.20'::seg AS bool;
bool
------
t
(1 row)
SELECT '24 .. 33.20'::seg = '24 .. 33.21'::seg AS bool;
bool
------
f
(1 row)
SELECT '24 .. 33.20'::seg != '24 .. 33.20'::seg AS bool;
bool
------
f
(1 row)
SELECT '24 .. 33.20'::seg != '24 .. 33.21'::seg AS bool;
bool
------
t
(1 row)
-- overlap
--
SELECT '1'::seg && '1'::seg AS bool;
bool
------
t
(1 row)
SELECT '1'::seg && '2'::seg AS bool;
bool
------
f
(1 row)
SELECT '0 ..'::seg && '0 ..'::seg AS bool;
bool
------
t
(1 row)
SELECT '0 .. 1'::seg && '0 .. 1'::seg AS bool;
bool
------
t
(1 row)
SELECT '..0'::seg && '0..'::seg AS bool;
bool
------
t
(1 row)
SELECT '-1 .. 0.1'::seg && '0 .. 1'::seg AS bool;
bool
------
t
(1 row)
SELECT '-1 .. 0'::seg && '0 .. 1'::seg AS bool;
bool
------
t
(1 row)
SELECT '-1 .. -0.0001'::seg && '0 .. 1'::seg AS bool;
bool
------
f
(1 row)
SELECT '0 ..'::seg && '1'::seg AS bool;
bool
------
t
(1 row)
SELECT '0 .. 1'::seg && '1'::seg AS bool;
bool
------
t
(1 row)
SELECT '0 .. 1'::seg && '2'::seg AS bool;
bool
------
f
(1 row)
SELECT '0 .. 2'::seg && '1'::seg AS bool;
bool
------
t
(1 row)
SELECT '1'::seg && '0 .. 1'::seg AS bool;
bool
------
t
(1 row)
SELECT '2'::seg && '0 .. 1'::seg AS bool;
bool
------
f
(1 row)
SELECT '1'::seg && '0 .. 2'::seg AS bool;
bool
------
t
(1 row)
-- overlap on the left
--
SELECT '1'::seg &< '0'::seg AS bool;
bool
------
f
(1 row)
SELECT '1'::seg &< '1'::seg AS bool;
bool
------
t
(1 row)
SELECT '1'::seg &< '2'::seg AS bool;
bool
------
t
(1 row)
SELECT '0 .. 1'::seg &< '0'::seg AS bool;
bool
------
f
(1 row)
SELECT '0 .. 1'::seg &< '1'::seg AS bool;
bool
------
t
(1 row)
SELECT '0 .. 1'::seg &< '2'::seg AS bool;
bool
------
t
(1 row)
SELECT '0 .. 1'::seg &< '0 .. 0.5'::seg AS bool;
bool
------
f
(1 row)
SELECT '0 .. 1'::seg &< '0 .. 1'::seg AS bool;
bool
------
t
(1 row)
SELECT '0 .. 1'::seg &< '0 .. 2'::seg AS bool;
bool
------
t
(1 row)
SELECT '0 .. 1'::seg &< '1 .. 2'::seg AS bool;
bool
------
t
(1 row)
SELECT '0 .. 1'::seg &< '2 .. 3'::seg AS bool;
bool
------
t
(1 row)
-- overlap on the right
--
SELECT '0'::seg &> '1'::seg AS bool;
bool
------
f
(1 row)
SELECT '1'::seg &> '1'::seg AS bool;
bool
------
t
(1 row)
SELECT '2'::seg &> '1'::seg AS bool;
bool
------
t
(1 row)
SELECT '0'::seg &> '0 .. 1'::seg AS bool;
bool
------
t
(1 row)
SELECT '1'::seg &> '0 .. 1'::seg AS bool;
bool
------
t
(1 row)
SELECT '2'::seg &> '0 .. 1'::seg AS bool;
bool
------
t
(1 row)
SELECT '0 .. 0.5'::seg &> '0 .. 1'::seg AS bool;
bool
------
t
(1 row)
SELECT '0 .. 1'::seg &> '0 .. 1'::seg AS bool;
bool
------
t
(1 row)
SELECT '0 .. 2'::seg &> '0 .. 2'::seg AS bool;
bool
------
t
(1 row)
SELECT '1 .. 2'::seg &> '0 .. 1'::seg AS bool;
bool
------
t
(1 row)
SELECT '2 .. 3'::seg &> '0 .. 1'::seg AS bool;
bool
------
t
(1 row)
-- left
--
SELECT '1'::seg << '0'::seg AS bool;
bool
------
f
(1 row)
SELECT '1'::seg << '1'::seg AS bool;
bool
------
f
(1 row)
SELECT '1'::seg << '2'::seg AS bool;
bool
------
t
(1 row)
SELECT '0 .. 1'::seg << '0'::seg AS bool;
bool
------
f
(1 row)
SELECT '0 .. 1'::seg << '1'::seg AS bool;
bool
------
f
(1 row)
SELECT '0 .. 1'::seg << '2'::seg AS bool;
bool
------
t
(1 row)
SELECT '0 .. 1'::seg << '0 .. 0.5'::seg AS bool;
bool
------
f
(1 row)
SELECT '0 .. 1'::seg << '0 .. 1'::seg AS bool;
bool
------
f
(1 row)
SELECT '0 .. 1'::seg << '0 .. 2'::seg AS bool;
bool
------
f
(1 row)
SELECT '0 .. 1'::seg << '1 .. 2'::seg AS bool;
bool
------
f
(1 row)
SELECT '0 .. 1'::seg << '2 .. 3'::seg AS bool;
bool
------
t
(1 row)
-- right
--
SELECT '0'::seg >> '1'::seg AS bool;
bool
------
f
(1 row)
SELECT '1'::seg >> '1'::seg AS bool;
bool
------
f
(1 row)
SELECT '2'::seg >> '1'::seg AS bool;
bool
------
t
(1 row)
SELECT '0'::seg >> '0 .. 1'::seg AS bool;
bool
------
f
(1 row)
SELECT '1'::seg >> '0 .. 1'::seg AS bool;
bool
------
f
(1 row)
SELECT '2'::seg >> '0 .. 1'::seg AS bool;
bool
------
t
(1 row)
SELECT '0 .. 0.5'::seg >> '0 .. 1'::seg AS bool;
bool
------
f
(1 row)
SELECT '0 .. 1'::seg >> '0 .. 1'::seg AS bool;
bool
------
f
(1 row)
SELECT '0 .. 2'::seg >> '0 .. 2'::seg AS bool;
bool
------
f
(1 row)
SELECT '1 .. 2'::seg >> '0 .. 1'::seg AS bool;
bool
------
f
(1 row)
SELECT '2 .. 3'::seg >> '0 .. 1'::seg AS bool;
bool
------
t
(1 row)
-- "contained in" (the left value belongs within the interval specified in the right value):
--
SELECT '0'::seg <@ '0'::seg AS bool;
bool
------
t
(1 row)
SELECT '0'::seg <@ '0 ..'::seg AS bool;
bool
------
t
(1 row)
SELECT '0'::seg <@ '.. 0'::seg AS bool;
bool
------
t
(1 row)
SELECT '0'::seg <@ '-1 .. 1'::seg AS bool;
bool
------
t
(1 row)
SELECT '0'::seg <@ '-1 .. 1'::seg AS bool;
bool
------
t
(1 row)
SELECT '-1'::seg <@ '-1 .. 1'::seg AS bool;
bool
------
t
(1 row)
SELECT '1'::seg <@ '-1 .. 1'::seg AS bool;
bool
------
t
(1 row)
SELECT '-1 .. 1'::seg <@ '-1 .. 1'::seg AS bool;
bool
------
t
(1 row)
-- "contains" (the left value contains the interval specified in the right value):
--
SELECT '0'::seg @> '0'::seg AS bool;
bool
------
t
(1 row)
SELECT '0 .. '::seg <@ '0'::seg AS bool;
bool
------
f
(1 row)
SELECT '.. 0'::seg <@ '0'::seg AS bool;
bool
------
f
(1 row)
SELECT '-1 .. 1'::seg <@ '0'::seg AS bool;
bool
------
f
(1 row)
SELECT '0'::seg <@ '-1 .. 1'::seg AS bool;
bool
------
t
(1 row)
SELECT '-1'::seg <@ '-1 .. 1'::seg AS bool;
bool
------
t
(1 row)
SELECT '1'::seg <@ '-1 .. 1'::seg AS bool;
bool
------
t
(1 row)
-- Load some example data and build the index
--
CREATE TABLE test_seg (s seg);
NOTICE: Table doesn't have 'DISTRIBUTED BY' clause, and no column type is suitable for a distribution key. Creating a NULL policy entry.
\copy test_seg from 'data/test_seg.data'
CREATE INDEX test_seg_ix ON test_seg USING gist (s);
SELECT count(*) FROM test_seg WHERE s @> '11..11.3';
count
-------
143
(1 row)
-- Test sorting
SELECT * FROM test_seg WHERE s @> '11..11.3' GROUP BY s;
s
-----------------
.. 4.0e1
.. >8.2e1
.. 9.0e1
<1.0 .. >13.0
1.3 .. 12.0
2.0 .. 11.5
2.1 .. 11.8
<2.3 ..
>2.3 ..
2.4 .. 11.3
2.5 .. 11.5
2.5 .. 11.8
2.6 ..
2.7 .. 12.0
<3.0 ..
3 .. 5.8e1
3.1 .. 11.5
3.5 .. 11.5
3.5 .. 12.2
<4.0 .. >1.2e1
<4.0 ..
4 .. 1.2e1
4.0 .. 11.7
4.0 .. 12.5
4.0 .. 13.0
4.0 .. 6.0e1
4.0 ..
4.2 .. 11.5
4.2 .. 11.7
<4.5 .. >1.2e1
4.5 .. 11.5
4.5 .. <1.2e1
4.5 .. >1.2e1
4.5 .. 12.5
4.5 .. 1.15e2
4.7 .. 11.8
4.8 .. 11.5
4.8 .. 11.6
4.8 .. 12.5
4.8 ..
4.9 .. >1.2e1
4.9 ..
5 .. 11.5
5 .. 1.2e1
5 .. 3.0e1
5.0 .. 11.4
5.0 .. 11.5
5.0 .. 11.6
5.0 .. 11.7
5.0 .. 12.0
5.0 .. >12.0
5.0 .. >1.2e1
5.2 .. 11.5
5.2 .. >1.2e1
5.25 .. >1.2e1
5.3 .. 11.5
5.3 .. 1.3e1
5.3 .. >9.0e1
5.3 ..
5.4 ..
5.5 .. 11.5
5.5 .. 11.7
5.5 .. 1.2e1
5.5 .. >1.2e1
5.5 .. 12.5
5.5 .. 13.5
5.5 ..
>5.5 ..
5.7 ..
5.9 ..
6 .. 11.5
6 .. >1.2e1
6.0 .. 11.5
6.0 .. 1.3e1
>6.0 .. <11.5
6.1 .. >1.2e1
6.1 ..
6.2 .. >11.5
6.3 ..
6.5 .. 11.5
6.5 .. 12.0
6.5 .. >12.0
6.5 ..
6.6 ..
6.7 .. 11.5
6.7 ..
6.75 ..
6.8 ..
6.9 .. 12.2
6.9 .. >9.0e1
6.9 ..
<7.0 .. >11.5
7.0 .. 11.5
7.0 .. >11.5
7.0 ..
>7.15 ..
7.2 .. 13.5
7.3 .. >9.0e1
7.3 ..
>7.3 ..
7.4 .. 12.1
7.4 ..
7.5 .. 11.5
7.5 .. 12.0
7.5 ..
7.7 .. 11.5
7.7 ..
7.75 ..
8.0 .. 11.7
8.0 .. 12.0
8.0 .. >13.0
8.2 ..
8.3 ..
8.5 .. >11.5
8.5 .. 12.5
8.5 ..
8.6 .. >9.9e1
8.7 .. 11.3
8.7 .. 11.7
8.9 .. 11.5
9 .. >1.2e1
9.0 .. 11.3
9.0 .. 11.5
9.0 .. 1.2e1
9.0 ..
9.2 .. 1.2e1
9.4 .. 12.2
<9.5 .. 1.2e1
<9.5 .. >12.2
9.5 ..
9.6 .. 11.5
9.7 .. 11.5
9.7 .. >1.2e1
9.8 .. >12.5
<1.0e1 .. >11.6
10.0 .. 11.5
10.0 .. 12.5
10.0 .. >12.5
10.2 .. 11.8
<10.5 .. 11.5
10.5 .. 11.5
10.5 .. <13.5
10.7 .. 12.3
(143 rows)
-- Test functions
SELECT seg_lower(s), seg_center(s), seg_upper(s)
FROM test_seg WHERE s @> '11.2..11.3' OR s IS NULL ORDER BY s;
seg_lower | seg_center | seg_upper
-----------+------------+-----------
-Infinity | -Infinity | 40
-Infinity | -Infinity | 82
-Infinity | -Infinity | 90
1 | 7 | 13
1.3 | 6.65 | 12
2 | 6.75 | 11.5
2.1 | 6.95 | 11.8
2.3 | Infinity | Infinity
2.3 | Infinity | Infinity
2.4 | 6.85 | 11.3
2.5 | 7 | 11.5
2.5 | 7.15 | 11.8
2.6 | Infinity | Infinity
2.7 | 7.35 | 12
3 | Infinity | Infinity
3 | 30.5 | 58
3.1 | 7.3 | 11.5
3.5 | 7.5 | 11.5
3.5 | 7.85 | 12.2
4 | 8 | 12
4 | Infinity | Infinity
4 | 8 | 12
4 | 7.85 | 11.7
4 | 8.25 | 12.5
4 | 8.5 | 13
4 | 32 | 60
4 | Infinity | Infinity
4.2 | 7.85 | 11.5
4.2 | 7.95 | 11.7
4.5 | 8.25 | 12
4.5 | 8 | 11.5
4.5 | 8.25 | 12
4.5 | 8.25 | 12
4.5 | 8.5 | 12.5
4.5 | 59.75 | 115
4.7 | 8.25 | 11.8
4.8 | 8.15 | 11.5
4.8 | 8.2 | 11.6
4.8 | 8.65 | 12.5
4.8 | Infinity | Infinity
4.9 | 8.45 | 12
4.9 | Infinity | Infinity
5 | 8.25 | 11.5
5 | 8.5 | 12
5 | 17.5 | 30
5 | 8.2 | 11.4
5 | 8.25 | 11.5
5 | 8.3 | 11.6
5 | 8.35 | 11.7
5 | 8.5 | 12
5 | 8.5 | 12
5 | 8.5 | 12
5.2 | 8.35 | 11.5
5.2 | 8.6 | 12
5.25 | 8.625 | 12
5.3 | 8.4 | 11.5
5.3 | 9.15 | 13
5.3 | 47.65 | 90
5.3 | Infinity | Infinity
5.4 | Infinity | Infinity
5.5 | 8.5 | 11.5
5.5 | 8.6 | 11.7
5.5 | 8.75 | 12
5.5 | 8.75 | 12
5.5 | 9 | 12.5
5.5 | 9.5 | 13.5
5.5 | Infinity | Infinity
5.5 | Infinity | Infinity
5.7 | Infinity | Infinity
5.9 | Infinity | Infinity
6 | 8.75 | 11.5
6 | 9 | 12
6 | 8.75 | 11.5
6 | 9.5 | 13
6 | 8.75 | 11.5
6.1 | 9.05 | 12
6.1 | Infinity | Infinity
6.2 | 8.85 | 11.5
6.3 | Infinity | Infinity
6.5 | 9 | 11.5
6.5 | 9.25 | 12
6.5 | 9.25 | 12
6.5 | Infinity | Infinity
6.6 | Infinity | Infinity
6.7 | 9.1 | 11.5
6.7 | Infinity | Infinity
6.75 | Infinity | Infinity
6.8 | Infinity | Infinity
6.9 | 9.55 | 12.2
6.9 | 48.45 | 90
6.9 | Infinity | Infinity
7 | 9.25 | 11.5
7 | 9.25 | 11.5
7 | 9.25 | 11.5
7 | Infinity | Infinity
7.15 | Infinity | Infinity
7.2 | 10.35 | 13.5
7.3 | 48.65 | 90
7.3 | Infinity | Infinity
7.3 | Infinity | Infinity
7.4 | 9.75 | 12.1
7.4 | Infinity | Infinity
7.5 | 9.5 | 11.5
7.5 | 9.75 | 12
7.5 | Infinity | Infinity
7.7 | 9.6 | 11.5
7.7 | Infinity | Infinity
7.75 | Infinity | Infinity
8 | 9.85 | 11.7
8 | 10 | 12
8 | 10.5 | 13
8.2 | Infinity | Infinity
8.3 | Infinity | Infinity
8.5 | 10 | 11.5
8.5 | 10.5 | 12.5
8.5 | Infinity | Infinity
8.6 | 53.8 | 99
8.7 | 10 | 11.3
8.7 | 10.2 | 11.7
8.9 | 10.2 | 11.5
9 | 10.5 | 12
9 | 10.15 | 11.3
9 | 10.25 | 11.5
9 | 10.5 | 12
9 | Infinity | Infinity
9.2 | 10.6 | 12
9.4 | 10.8 | 12.2
9.5 | 10.75 | 12
9.5 | 10.85 | 12.2
9.5 | Infinity | Infinity
9.6 | 10.55 | 11.5
9.7 | 10.6 | 11.5
9.7 | 10.85 | 12
9.8 | 11.15 | 12.5
10 | 10.8 | 11.6
10 | 10.75 | 11.5
10 | 11.25 | 12.5
10 | 11.25 | 12.5
10.2 | 11 | 11.8
10.5 | 11 | 11.5
10.5 | 11 | 11.5
10.5 | 12 | 13.5
10.7 | 11.5 | 12.3
| |
(144 rows)
--
-- Test seg datatype
--
CREATE EXTENSION seg;
--
-- testing the input and output functions
--
-- Any number
SELECT '1'::seg AS seg;
seg
-----
1
(1 row)
SELECT '-1'::seg AS seg;
seg
-----
-1
(1 row)
SELECT '1.0'::seg AS seg;
seg
-----
1.0
(1 row)
SELECT '-1.0'::seg AS seg;
seg
------
-1.0
(1 row)
SELECT '1e7'::seg AS seg;
seg
--------
1e+007
(1 row)
SELECT '-1e7'::seg AS seg;
seg
---------
-1e+007
(1 row)
SELECT '1.0e7'::seg AS seg;
seg
----------
1.0e+007
(1 row)
SELECT '-1.0e7'::seg AS seg;
seg
-----------
-1.0e+007
(1 row)
SELECT '1e+7'::seg AS seg;
seg
--------
1e+007
(1 row)
SELECT '-1e+7'::seg AS seg;
seg
---------
-1e+007
(1 row)
SELECT '1.0e+7'::seg AS seg;
seg
----------
1.0e+007
(1 row)
SELECT '-1.0e+7'::seg AS seg;
seg
-----------
-1.0e+007
(1 row)
SELECT '1e-7'::seg AS seg;
seg
--------
1e-007
(1 row)
SELECT '-1e-7'::seg AS seg;
seg
---------
-1e-007
(1 row)
SELECT '1.0e-7'::seg AS seg;
seg
----------
1.0e-007
(1 row)
SELECT '-1.0e-7'::seg AS seg;
seg
-----------
-1.0e-007
(1 row)
SELECT '2e-6'::seg AS seg;
seg
--------
2e-006
(1 row)
SELECT '2e-5'::seg AS seg;
seg
--------
2e-005
(1 row)
SELECT '2e-4'::seg AS seg;
seg
--------
0.0002
(1 row)
SELECT '2e-3'::seg AS seg;
seg
-------
0.002
(1 row)
SELECT '2e-2'::seg AS seg;
seg
------
0.02
(1 row)
SELECT '2e-1'::seg AS seg;
seg
-----
0.2
(1 row)
SELECT '2e-0'::seg AS seg;
seg
-----
2
(1 row)
SELECT '2e+0'::seg AS seg;
seg
-----
2
(1 row)
SELECT '2e+1'::seg AS seg;
seg
-----
2e1
(1 row)
SELECT '2e+2'::seg AS seg;
seg
-----
2e2
(1 row)
SELECT '2e+3'::seg AS seg;
seg
-----
2e3
(1 row)
SELECT '2e+4'::seg AS seg;
seg
-----
2e4
(1 row)
SELECT '2e+5'::seg AS seg;
seg
--------
2e+005
(1 row)
SELECT '2e+6'::seg AS seg;
seg
--------
2e+006
(1 row)
-- Significant digits preserved
SELECT '1'::seg AS seg;
seg
-----
1
(1 row)
SELECT '1.0'::seg AS seg;
seg
-----
1.0
(1 row)
SELECT '1.00'::seg AS seg;
seg
------
1.00
(1 row)
SELECT '1.000'::seg AS seg;
seg
-------
1.000
(1 row)
SELECT '1.0000'::seg AS seg;
seg
--------
1.0000
(1 row)
SELECT '1.00000'::seg AS seg;
seg
---------
1.00000
(1 row)
SELECT '1.000000'::seg AS seg;
seg
---------
1.00000
(1 row)
SELECT '0.000000120'::seg AS seg;
seg
-----------
1.20e-007
(1 row)
SELECT '3.400e5'::seg AS seg;
seg
------------
3.400e+005
(1 row)
-- Digits truncated
SELECT '12.34567890123456'::seg AS seg;
seg
---------
12.3457
(1 row)
-- Numbers with certainty indicators
SELECT '~6.5'::seg AS seg;
seg
------
~6.5
(1 row)
SELECT '<6.5'::seg AS seg;
seg
------
<6.5
(1 row)
SELECT '>6.5'::seg AS seg;
seg
------
>6.5
(1 row)
SELECT '~ 6.5'::seg AS seg;
seg
------
~6.5
(1 row)
SELECT '< 6.5'::seg AS seg;
seg
------
<6.5
(1 row)
SELECT '> 6.5'::seg AS seg;
seg
------
>6.5
(1 row)
-- Open intervals
SELECT '0..'::seg AS seg;
seg
------
0 ..
(1 row)
SELECT '0...'::seg AS seg;
seg
------
0 ..
(1 row)
SELECT '0 ..'::seg AS seg;
seg
------
0 ..
(1 row)
SELECT '0 ...'::seg AS seg;
seg
------
0 ..
(1 row)
SELECT '..0'::seg AS seg;
seg
------
.. 0
(1 row)
SELECT '...0'::seg AS seg;
seg
------
.. 0
(1 row)
SELECT '.. 0'::seg AS seg;
seg
------
.. 0
(1 row)
SELECT '... 0'::seg AS seg;
seg
------
.. 0
(1 row)
-- Finite intervals
SELECT '0 .. 1'::seg AS seg;
seg
--------
0 .. 1
(1 row)
SELECT '-1 .. 0'::seg AS seg;
seg
---------
-1 .. 0
(1 row)
SELECT '-1 .. 1'::seg AS seg;
seg
---------
-1 .. 1
(1 row)
-- (+/-) intervals
SELECT '0(+-)1'::seg AS seg;
seg
---------
-1 .. 1
(1 row)
SELECT '0(+-)1.0'::seg AS seg;
seg
-------------
-1.0 .. 1.0
(1 row)
SELECT '1.0(+-)0.005'::seg AS seg;
seg
----------------
0.995 .. 1.005
(1 row)
SELECT '101(+-)1'::seg AS seg;
seg
------------------
1.00e2 .. 1.02e2
(1 row)
-- incorrect number of significant digits in 99.0:
SELECT '100(+-)1'::seg AS seg;
seg
----------------
99.0 .. 1.01e2
(1 row)
-- invalid input
SELECT ''::seg AS seg;
ERROR: bad seg representation
LINE 1: SELECT ''::seg AS seg;
^
DETAIL: syntax error at end of input
SELECT 'ABC'::seg AS seg;
ERROR: bad seg representation
LINE 1: SELECT 'ABC'::seg AS seg;
^
DETAIL: syntax error at or near "A"
SELECT '1ABC'::seg AS seg;
ERROR: bad seg representation
LINE 1: SELECT '1ABC'::seg AS seg;
^
DETAIL: syntax error at or near "A"
SELECT '1.'::seg AS seg;
ERROR: bad seg representation
LINE 1: SELECT '1.'::seg AS seg;
^
DETAIL: syntax error at or near "."
SELECT '1.....'::seg AS seg;
ERROR: bad seg representation
LINE 1: SELECT '1.....'::seg AS seg;
^
DETAIL: syntax error at or near ".."
SELECT '.1'::seg AS seg;
ERROR: bad seg representation
LINE 1: SELECT '.1'::seg AS seg;
^
DETAIL: syntax error at or near "."
SELECT '1..2.'::seg AS seg;
ERROR: bad seg representation
LINE 1: SELECT '1..2.'::seg AS seg;
^
DETAIL: syntax error at or near "."
SELECT '1 e7'::seg AS seg;
ERROR: bad seg representation
LINE 1: SELECT '1 e7'::seg AS seg;
^
DETAIL: syntax error at or near "e"
SELECT '1e700'::seg AS seg;
ERROR: "1e700" is out of range for type real
LINE 1: SELECT '1e700'::seg AS seg;
^
--
-- testing the operators
--
-- equality/inequality:
--
SELECT '24 .. 33.20'::seg = '24 .. 33.20'::seg AS bool;
bool
------
t
(1 row)
SELECT '24 .. 33.20'::seg = '24 .. 33.21'::seg AS bool;
bool
------
f
(1 row)
SELECT '24 .. 33.20'::seg != '24 .. 33.20'::seg AS bool;
bool
------
f
(1 row)
SELECT '24 .. 33.20'::seg != '24 .. 33.21'::seg AS bool;
bool
------
t
(1 row)
-- overlap
--
SELECT '1'::seg && '1'::seg AS bool;
bool
------
t
(1 row)
SELECT '1'::seg && '2'::seg AS bool;
bool
------
f
(1 row)
SELECT '0 ..'::seg && '0 ..'::seg AS bool;
bool
------
t
(1 row)
SELECT '0 .. 1'::seg && '0 .. 1'::seg AS bool;
bool
------
t
(1 row)
SELECT '..0'::seg && '0..'::seg AS bool;
bool
------
t
(1 row)
SELECT '-1 .. 0.1'::seg && '0 .. 1'::seg AS bool;
bool
------
t
(1 row)
SELECT '-1 .. 0'::seg && '0 .. 1'::seg AS bool;
bool
------
t
(1 row)
SELECT '-1 .. -0.0001'::seg && '0 .. 1'::seg AS bool;
bool
------
f
(1 row)
SELECT '0 ..'::seg && '1'::seg AS bool;
bool
------
t
(1 row)
SELECT '0 .. 1'::seg && '1'::seg AS bool;
bool
------
t
(1 row)
SELECT '0 .. 1'::seg && '2'::seg AS bool;
bool
------
f
(1 row)
SELECT '0 .. 2'::seg && '1'::seg AS bool;
bool
------
t
(1 row)
SELECT '1'::seg && '0 .. 1'::seg AS bool;
bool
------
t
(1 row)
SELECT '2'::seg && '0 .. 1'::seg AS bool;
bool
------
f
(1 row)
SELECT '1'::seg && '0 .. 2'::seg AS bool;
bool
------
t
(1 row)
-- overlap on the left
--
SELECT '1'::seg &< '0'::seg AS bool;
bool
------
f
(1 row)
SELECT '1'::seg &< '1'::seg AS bool;
bool
------
t
(1 row)
SELECT '1'::seg &< '2'::seg AS bool;
bool
------
t
(1 row)
SELECT '0 .. 1'::seg &< '0'::seg AS bool;
bool
------
f
(1 row)
SELECT '0 .. 1'::seg &< '1'::seg AS bool;
bool
------
t
(1 row)
SELECT '0 .. 1'::seg &< '2'::seg AS bool;
bool
------
t
(1 row)
SELECT '0 .. 1'::seg &< '0 .. 0.5'::seg AS bool;
bool
------
f
(1 row)
SELECT '0 .. 1'::seg &< '0 .. 1'::seg AS bool;
bool
------
t
(1 row)
SELECT '0 .. 1'::seg &< '0 .. 2'::seg AS bool;
bool
------
t
(1 row)
SELECT '0 .. 1'::seg &< '1 .. 2'::seg AS bool;
bool
------
t
(1 row)
SELECT '0 .. 1'::seg &< '2 .. 3'::seg AS bool;
bool
------
t
(1 row)
-- overlap on the right
--
SELECT '0'::seg &> '1'::seg AS bool;
bool
------
f
(1 row)
SELECT '1'::seg &> '1'::seg AS bool;
bool
------
t
(1 row)
SELECT '2'::seg &> '1'::seg AS bool;
bool
------
t
(1 row)
SELECT '0'::seg &> '0 .. 1'::seg AS bool;
bool
------
t
(1 row)
SELECT '1'::seg &> '0 .. 1'::seg AS bool;
bool
------
t
(1 row)
SELECT '2'::seg &> '0 .. 1'::seg AS bool;
bool
------
t
(1 row)
SELECT '0 .. 0.5'::seg &> '0 .. 1'::seg AS bool;
bool
------
t
(1 row)
SELECT '0 .. 1'::seg &> '0 .. 1'::seg AS bool;
bool
------
t
(1 row)
SELECT '0 .. 2'::seg &> '0 .. 2'::seg AS bool;
bool
------
t
(1 row)
SELECT '1 .. 2'::seg &> '0 .. 1'::seg AS bool;
bool
------
t
(1 row)
SELECT '2 .. 3'::seg &> '0 .. 1'::seg AS bool;
bool
------
t
(1 row)
-- left
--
SELECT '1'::seg << '0'::seg AS bool;
bool
------
f
(1 row)
SELECT '1'::seg << '1'::seg AS bool;
bool
------
f
(1 row)
SELECT '1'::seg << '2'::seg AS bool;
bool
------
t
(1 row)
SELECT '0 .. 1'::seg << '0'::seg AS bool;
bool
------
f
(1 row)
SELECT '0 .. 1'::seg << '1'::seg AS bool;
bool
------
f
(1 row)
SELECT '0 .. 1'::seg << '2'::seg AS bool;
bool
------
t
(1 row)
SELECT '0 .. 1'::seg << '0 .. 0.5'::seg AS bool;
bool
------
f
(1 row)
SELECT '0 .. 1'::seg << '0 .. 1'::seg AS bool;
bool
------
f
(1 row)
SELECT '0 .. 1'::seg << '0 .. 2'::seg AS bool;
bool
------
f
(1 row)
SELECT '0 .. 1'::seg << '1 .. 2'::seg AS bool;
bool
------
f
(1 row)
SELECT '0 .. 1'::seg << '2 .. 3'::seg AS bool;
bool
------
t
(1 row)
-- right
--
SELECT '0'::seg >> '1'::seg AS bool;
bool
------
f
(1 row)
SELECT '1'::seg >> '1'::seg AS bool;
bool
------
f
(1 row)
SELECT '2'::seg >> '1'::seg AS bool;
bool
------
t
(1 row)
SELECT '0'::seg >> '0 .. 1'::seg AS bool;
bool
------
f
(1 row)
SELECT '1'::seg >> '0 .. 1'::seg AS bool;
bool
------
f
(1 row)
SELECT '2'::seg >> '0 .. 1'::seg AS bool;
bool
------
t
(1 row)
SELECT '0 .. 0.5'::seg >> '0 .. 1'::seg AS bool;
bool
------
f
(1 row)
SELECT '0 .. 1'::seg >> '0 .. 1'::seg AS bool;
bool
------
f
(1 row)
SELECT '0 .. 2'::seg >> '0 .. 2'::seg AS bool;
bool
------
f
(1 row)
SELECT '1 .. 2'::seg >> '0 .. 1'::seg AS bool;
bool
------
f
(1 row)
SELECT '2 .. 3'::seg >> '0 .. 1'::seg AS bool;
bool
------
t
(1 row)
-- "contained in" (the left value belongs within the interval specified in the right value):
--
SELECT '0'::seg <@ '0'::seg AS bool;
bool
------
t
(1 row)
SELECT '0'::seg <@ '0 ..'::seg AS bool;
bool
------
t
(1 row)
SELECT '0'::seg <@ '.. 0'::seg AS bool;
bool
------
t
(1 row)
SELECT '0'::seg <@ '-1 .. 1'::seg AS bool;
bool
------
t
(1 row)
SELECT '0'::seg <@ '-1 .. 1'::seg AS bool;
bool
------
t
(1 row)
SELECT '-1'::seg <@ '-1 .. 1'::seg AS bool;
bool
------
t
(1 row)
SELECT '1'::seg <@ '-1 .. 1'::seg AS bool;
bool
------
t
(1 row)
SELECT '-1 .. 1'::seg <@ '-1 .. 1'::seg AS bool;
bool
------
t
(1 row)
-- "contains" (the left value contains the interval specified in the right value):
--
SELECT '0'::seg @> '0'::seg AS bool;
bool
------
t
(1 row)
SELECT '0 .. '::seg <@ '0'::seg AS bool;
bool
------
f
(1 row)
SELECT '.. 0'::seg <@ '0'::seg AS bool;
bool
------
f
(1 row)
SELECT '-1 .. 1'::seg <@ '0'::seg AS bool;
bool
------
f
(1 row)
SELECT '0'::seg <@ '-1 .. 1'::seg AS bool;
bool
------
t
(1 row)
SELECT '-1'::seg <@ '-1 .. 1'::seg AS bool;
bool
------
t
(1 row)
SELECT '1'::seg <@ '-1 .. 1'::seg AS bool;
bool
------
t
(1 row)
-- Load some example data and build the index
--
CREATE TABLE test_seg (s seg);
\copy test_seg from 'data/test_seg.data'
CREATE INDEX test_seg_ix ON test_seg USING gist (s);
SELECT count(*) FROM test_seg WHERE s @> '11..11.3';
count
-------
143
(1 row)
-- Test sorting
SELECT * FROM test_seg WHERE s @> '11..11.3' GROUP BY s;
s
-----------------
.. 4.0e1
.. >8.2e1
.. 9.0e1
<1.0 .. >13.0
1.3 .. 12.0
2.0 .. 11.5
2.1 .. 11.8
<2.3 ..
>2.3 ..
2.4 .. 11.3
2.5 .. 11.5
2.5 .. 11.8
2.6 ..
2.7 .. 12.0
<3.0 ..
3 .. 5.8e1
3.1 .. 11.5
3.5 .. 11.5
3.5 .. 12.2
<4.0 .. >1.2e1
<4.0 ..
4 .. 1.2e1
4.0 .. 11.7
4.0 .. 12.5
4.0 .. 13.0
4.0 .. 6.0e1
4.0 ..
4.2 .. 11.5
4.2 .. 11.7
<4.5 .. >1.2e1
4.5 .. 11.5
4.5 .. <1.2e1
4.5 .. >1.2e1
4.5 .. 12.5
4.5 .. 1.15e2
4.7 .. 11.8
4.8 .. 11.5
4.8 .. 11.6
4.8 .. 12.5
4.8 ..
4.9 .. >1.2e1
4.9 ..
5 .. 11.5
5 .. 1.2e1
5 .. 3.0e1
5.0 .. 11.4
5.0 .. 11.5
5.0 .. 11.6
5.0 .. 11.7
5.0 .. 12.0
5.0 .. >12.0
5.0 .. >1.2e1
5.2 .. 11.5
5.2 .. >1.2e1
5.25 .. >1.2e1
5.3 .. 11.5
5.3 .. 1.3e1
5.3 .. >9.0e1
5.3 ..
5.4 ..
5.5 .. 11.5
5.5 .. 11.7
5.5 .. 1.2e1
5.5 .. >1.2e1
5.5 .. 12.5
5.5 .. 13.5
5.5 ..
>5.5 ..
5.7 ..
5.9 ..
6 .. 11.5
6 .. >1.2e1
6.0 .. 11.5
6.0 .. 1.3e1
>6.0 .. <11.5
6.1 .. >1.2e1
6.1 ..
6.2 .. >11.5
6.3 ..
6.5 .. 11.5
6.5 .. 12.0
6.5 .. >12.0
6.5 ..
6.6 ..
6.7 .. 11.5
6.7 ..
6.75 ..
6.8 ..
6.9 .. 12.2
6.9 .. >9.0e1
6.9 ..
<7.0 .. >11.5
7.0 .. 11.5
7.0 .. >11.5
7.0 ..
>7.15 ..
7.2 .. 13.5
7.3 .. >9.0e1
7.3 ..
>7.3 ..
7.4 .. 12.1
7.4 ..
7.5 .. 11.5
7.5 .. 12.0
7.5 ..
7.7 .. 11.5
7.7 ..
7.75 ..
8.0 .. 11.7
8.0 .. 12.0
8.0 .. >13.0
8.2 ..
8.3 ..
8.5 .. >11.5
8.5 .. 12.5
8.5 ..
8.6 .. >9.9e1
8.7 .. 11.3
8.7 .. 11.7
8.9 .. 11.5
9 .. >1.2e1
9.0 .. 11.3
9.0 .. 11.5
9.0 .. 1.2e1
9.0 ..
9.2 .. 1.2e1
9.4 .. 12.2
<9.5 .. 1.2e1
<9.5 .. >12.2
9.5 ..
9.6 .. 11.5
9.7 .. 11.5
9.7 .. >1.2e1
9.8 .. >12.5
<1.0e1 .. >11.6
10.0 .. 11.5
10.0 .. 12.5
10.0 .. >12.5
10.2 .. 11.8
<10.5 .. 11.5
10.5 .. 11.5
10.5 .. <13.5
10.7 .. 12.3
(143 rows)
-- Test functions
SELECT seg_lower(s), seg_center(s), seg_upper(s)
FROM test_seg WHERE s @> '11.2..11.3' OR s IS NULL ORDER BY s;
seg_lower | seg_center | seg_upper
-----------+------------+-----------
-Infinity | -Infinity | 40
-Infinity | -Infinity | 82
-Infinity | -Infinity | 90
1 | 7 | 13
1.3 | 6.65 | 12
2 | 6.75 | 11.5
2.1 | 6.95 | 11.8
2.3 | Infinity | Infinity
2.3 | Infinity | Infinity
2.4 | 6.85 | 11.3
2.5 | 7 | 11.5
2.5 | 7.15 | 11.8
2.6 | Infinity | Infinity
2.7 | 7.35 | 12
3 | Infinity | Infinity
3 | 30.5 | 58
3.1 | 7.3 | 11.5
3.5 | 7.5 | 11.5
3.5 | 7.85 | 12.2
4 | 8 | 12
4 | Infinity | Infinity
4 | 8 | 12
4 | 7.85 | 11.7
4 | 8.25 | 12.5
4 | 8.5 | 13
4 | 32 | 60
4 | Infinity | Infinity
4.2 | 7.85 | 11.5
4.2 | 7.95 | 11.7
4.5 | 8.25 | 12
4.5 | 8 | 11.5
4.5 | 8.25 | 12
4.5 | 8.25 | 12
4.5 | 8.5 | 12.5
4.5 | 59.75 | 115
4.7 | 8.25 | 11.8
4.8 | 8.15 | 11.5
4.8 | 8.2 | 11.6
4.8 | 8.65 | 12.5
4.8 | Infinity | Infinity
4.9 | 8.45 | 12
4.9 | Infinity | Infinity
5 | 8.25 | 11.5
5 | 8.5 | 12
5 | 17.5 | 30
5 | 8.2 | 11.4
5 | 8.25 | 11.5
5 | 8.3 | 11.6
5 | 8.35 | 11.7
5 | 8.5 | 12
5 | 8.5 | 12
5 | 8.5 | 12
5.2 | 8.35 | 11.5
5.2 | 8.6 | 12
5.25 | 8.625 | 12
5.3 | 8.4 | 11.5
5.3 | 9.15 | 13
5.3 | 47.65 | 90
5.3 | Infinity | Infinity
5.4 | Infinity | Infinity
5.5 | 8.5 | 11.5
5.5 | 8.6 | 11.7
5.5 | 8.75 | 12
5.5 | 8.75 | 12
5.5 | 9 | 12.5
5.5 | 9.5 | 13.5
5.5 | Infinity | Infinity
5.5 | Infinity | Infinity
5.7 | Infinity | Infinity
5.9 | Infinity | Infinity
6 | 8.75 | 11.5
6 | 9 | 12
6 | 8.75 | 11.5
6 | 9.5 | 13
6 | 8.75 | 11.5
6.1 | 9.05 | 12
6.1 | Infinity | Infinity
6.2 | 8.85 | 11.5
6.3 | Infinity | Infinity
6.5 | 9 | 11.5
6.5 | 9.25 | 12
6.5 | 9.25 | 12
6.5 | Infinity | Infinity
6.6 | Infinity | Infinity
6.7 | 9.1 | 11.5
6.7 | Infinity | Infinity
6.75 | Infinity | Infinity
6.8 | Infinity | Infinity
6.9 | 9.55 | 12.2
6.9 | 48.45 | 90
6.9 | Infinity | Infinity
7 | 9.25 | 11.5
7 | 9.25 | 11.5
7 | 9.25 | 11.5
7 | Infinity | Infinity
7.15 | Infinity | Infinity
7.2 | 10.35 | 13.5
7.3 | 48.65 | 90
7.3 | Infinity | Infinity
7.3 | Infinity | Infinity
7.4 | 9.75 | 12.1
7.4 | Infinity | Infinity
7.5 | 9.5 | 11.5
7.5 | 9.75 | 12
7.5 | Infinity | Infinity
7.7 | 9.6 | 11.5
7.7 | Infinity | Infinity
7.75 | Infinity | Infinity
8 | 9.85 | 11.7
8 | 10 | 12
8 | 10.5 | 13
8.2 | Infinity | Infinity
8.3 | Infinity | Infinity
8.5 | 10 | 11.5
8.5 | 10.5 | 12.5
8.5 | Infinity | Infinity
8.6 | 53.8 | 99
8.7 | 10 | 11.3
8.7 | 10.2 | 11.7
8.9 | 10.2 | 11.5
9 | 10.5 | 12
9 | 10.15 | 11.3
9 | 10.25 | 11.5
9 | 10.5 | 12
9 | Infinity | Infinity
9.2 | 10.6 | 12
9.4 | 10.8 | 12.2
9.5 | 10.75 | 12
9.5 | 10.85 | 12.2
9.5 | Infinity | Infinity
9.6 | 10.55 | 11.5
9.7 | 10.6 | 11.5
9.7 | 10.85 | 12
9.8 | 11.15 | 12.5
10 | 10.8 | 11.6
10 | 10.75 | 11.5
10 | 11.25 | 12.5
10 | 11.25 | 12.5
10.2 | 11 | 11.8
10.5 | 11 | 11.5
10.5 | 11 | 11.5
10.5 | 12 | 13.5
10.7 | 11.5 | 12.3
| |
(144 rows)
--
-- Test seg datatype
--
CREATE EXTENSION seg;
--
-- testing the input and output functions
--
-- Any number
SELECT '1'::seg AS seg;
SELECT '-1'::seg AS seg;
SELECT '1.0'::seg AS seg;
SELECT '-1.0'::seg AS seg;
SELECT '1e7'::seg AS seg;
SELECT '-1e7'::seg AS seg;
SELECT '1.0e7'::seg AS seg;
SELECT '-1.0e7'::seg AS seg;
SELECT '1e+7'::seg AS seg;
SELECT '-1e+7'::seg AS seg;
SELECT '1.0e+7'::seg AS seg;
SELECT '-1.0e+7'::seg AS seg;
SELECT '1e-7'::seg AS seg;
SELECT '-1e-7'::seg AS seg;
SELECT '1.0e-7'::seg AS seg;
SELECT '-1.0e-7'::seg AS seg;
SELECT '2e-6'::seg AS seg;
SELECT '2e-5'::seg AS seg;
SELECT '2e-4'::seg AS seg;
SELECT '2e-3'::seg AS seg;
SELECT '2e-2'::seg AS seg;
SELECT '2e-1'::seg AS seg;
SELECT '2e-0'::seg AS seg;
SELECT '2e+0'::seg AS seg;
SELECT '2e+1'::seg AS seg;
SELECT '2e+2'::seg AS seg;
SELECT '2e+3'::seg AS seg;
SELECT '2e+4'::seg AS seg;
SELECT '2e+5'::seg AS seg;
SELECT '2e+6'::seg AS seg;
-- Significant digits preserved
SELECT '1'::seg AS seg;
SELECT '1.0'::seg AS seg;
SELECT '1.00'::seg AS seg;
SELECT '1.000'::seg AS seg;
SELECT '1.0000'::seg AS seg;
SELECT '1.00000'::seg AS seg;
SELECT '1.000000'::seg AS seg;
SELECT '0.000000120'::seg AS seg;
SELECT '3.400e5'::seg AS seg;
-- Digits truncated
SELECT '12.34567890123456'::seg AS seg;
-- Numbers with certainty indicators
SELECT '~6.5'::seg AS seg;
SELECT '<6.5'::seg AS seg;
SELECT '>6.5'::seg AS seg;
SELECT '~ 6.5'::seg AS seg;
SELECT '< 6.5'::seg AS seg;
SELECT '> 6.5'::seg AS seg;
-- Open intervals
SELECT '0..'::seg AS seg;
SELECT '0...'::seg AS seg;
SELECT '0 ..'::seg AS seg;
SELECT '0 ...'::seg AS seg;
SELECT '..0'::seg AS seg;
SELECT '...0'::seg AS seg;
SELECT '.. 0'::seg AS seg;
SELECT '... 0'::seg AS seg;
-- Finite intervals
SELECT '0 .. 1'::seg AS seg;
SELECT '-1 .. 0'::seg AS seg;
SELECT '-1 .. 1'::seg AS seg;
-- (+/-) intervals
SELECT '0(+-)1'::seg AS seg;
SELECT '0(+-)1.0'::seg AS seg;
SELECT '1.0(+-)0.005'::seg AS seg;
SELECT '101(+-)1'::seg AS seg;
-- incorrect number of significant digits in 99.0:
SELECT '100(+-)1'::seg AS seg;
-- invalid input
SELECT ''::seg AS seg;
SELECT 'ABC'::seg AS seg;
SELECT '1ABC'::seg AS seg;
SELECT '1.'::seg AS seg;
SELECT '1.....'::seg AS seg;
SELECT '.1'::seg AS seg;
SELECT '1..2.'::seg AS seg;
SELECT '1 e7'::seg AS seg;
SELECT '1e700'::seg AS seg;
--
-- testing the operators
--
-- equality/inequality:
--
SELECT '24 .. 33.20'::seg = '24 .. 33.20'::seg AS bool;
SELECT '24 .. 33.20'::seg = '24 .. 33.21'::seg AS bool;
SELECT '24 .. 33.20'::seg != '24 .. 33.20'::seg AS bool;
SELECT '24 .. 33.20'::seg != '24 .. 33.21'::seg AS bool;
-- overlap
--
SELECT '1'::seg && '1'::seg AS bool;
SELECT '1'::seg && '2'::seg AS bool;
SELECT '0 ..'::seg && '0 ..'::seg AS bool;
SELECT '0 .. 1'::seg && '0 .. 1'::seg AS bool;
SELECT '..0'::seg && '0..'::seg AS bool;
SELECT '-1 .. 0.1'::seg && '0 .. 1'::seg AS bool;
SELECT '-1 .. 0'::seg && '0 .. 1'::seg AS bool;
SELECT '-1 .. -0.0001'::seg && '0 .. 1'::seg AS bool;
SELECT '0 ..'::seg && '1'::seg AS bool;
SELECT '0 .. 1'::seg && '1'::seg AS bool;
SELECT '0 .. 1'::seg && '2'::seg AS bool;
SELECT '0 .. 2'::seg && '1'::seg AS bool;
SELECT '1'::seg && '0 .. 1'::seg AS bool;
SELECT '2'::seg && '0 .. 1'::seg AS bool;
SELECT '1'::seg && '0 .. 2'::seg AS bool;
-- overlap on the left
--
SELECT '1'::seg &< '0'::seg AS bool;
SELECT '1'::seg &< '1'::seg AS bool;
SELECT '1'::seg &< '2'::seg AS bool;
SELECT '0 .. 1'::seg &< '0'::seg AS bool;
SELECT '0 .. 1'::seg &< '1'::seg AS bool;
SELECT '0 .. 1'::seg &< '2'::seg AS bool;
SELECT '0 .. 1'::seg &< '0 .. 0.5'::seg AS bool;
SELECT '0 .. 1'::seg &< '0 .. 1'::seg AS bool;
SELECT '0 .. 1'::seg &< '0 .. 2'::seg AS bool;
SELECT '0 .. 1'::seg &< '1 .. 2'::seg AS bool;
SELECT '0 .. 1'::seg &< '2 .. 3'::seg AS bool;
-- overlap on the right
--
SELECT '0'::seg &> '1'::seg AS bool;
SELECT '1'::seg &> '1'::seg AS bool;
SELECT '2'::seg &> '1'::seg AS bool;
SELECT '0'::seg &> '0 .. 1'::seg AS bool;
SELECT '1'::seg &> '0 .. 1'::seg AS bool;
SELECT '2'::seg &> '0 .. 1'::seg AS bool;
SELECT '0 .. 0.5'::seg &> '0 .. 1'::seg AS bool;
SELECT '0 .. 1'::seg &> '0 .. 1'::seg AS bool;
SELECT '0 .. 2'::seg &> '0 .. 2'::seg AS bool;
SELECT '1 .. 2'::seg &> '0 .. 1'::seg AS bool;
SELECT '2 .. 3'::seg &> '0 .. 1'::seg AS bool;
-- left
--
SELECT '1'::seg << '0'::seg AS bool;
SELECT '1'::seg << '1'::seg AS bool;
SELECT '1'::seg << '2'::seg AS bool;
SELECT '0 .. 1'::seg << '0'::seg AS bool;
SELECT '0 .. 1'::seg << '1'::seg AS bool;
SELECT '0 .. 1'::seg << '2'::seg AS bool;
SELECT '0 .. 1'::seg << '0 .. 0.5'::seg AS bool;
SELECT '0 .. 1'::seg << '0 .. 1'::seg AS bool;
SELECT '0 .. 1'::seg << '0 .. 2'::seg AS bool;
SELECT '0 .. 1'::seg << '1 .. 2'::seg AS bool;
SELECT '0 .. 1'::seg << '2 .. 3'::seg AS bool;
-- right
--
SELECT '0'::seg >> '1'::seg AS bool;
SELECT '1'::seg >> '1'::seg AS bool;
SELECT '2'::seg >> '1'::seg AS bool;
SELECT '0'::seg >> '0 .. 1'::seg AS bool;
SELECT '1'::seg >> '0 .. 1'::seg AS bool;
SELECT '2'::seg >> '0 .. 1'::seg AS bool;
SELECT '0 .. 0.5'::seg >> '0 .. 1'::seg AS bool;
SELECT '0 .. 1'::seg >> '0 .. 1'::seg AS bool;
SELECT '0 .. 2'::seg >> '0 .. 2'::seg AS bool;
SELECT '1 .. 2'::seg >> '0 .. 1'::seg AS bool;
SELECT '2 .. 3'::seg >> '0 .. 1'::seg AS bool;
-- "contained in" (the left value belongs within the interval specified in the right value):
--
SELECT '0'::seg <@ '0'::seg AS bool;
SELECT '0'::seg <@ '0 ..'::seg AS bool;
SELECT '0'::seg <@ '.. 0'::seg AS bool;
SELECT '0'::seg <@ '-1 .. 1'::seg AS bool;
SELECT '0'::seg <@ '-1 .. 1'::seg AS bool;
SELECT '-1'::seg <@ '-1 .. 1'::seg AS bool;
SELECT '1'::seg <@ '-1 .. 1'::seg AS bool;
SELECT '-1 .. 1'::seg <@ '-1 .. 1'::seg AS bool;
-- "contains" (the left value contains the interval specified in the right value):
--
SELECT '0'::seg @> '0'::seg AS bool;
SELECT '0 .. '::seg <@ '0'::seg AS bool;
SELECT '.. 0'::seg <@ '0'::seg AS bool;
SELECT '-1 .. 1'::seg <@ '0'::seg AS bool;
SELECT '0'::seg <@ '-1 .. 1'::seg AS bool;
SELECT '-1'::seg <@ '-1 .. 1'::seg AS bool;
SELECT '1'::seg <@ '-1 .. 1'::seg AS bool;
-- Load some example data and build the index
--
CREATE TABLE test_seg (s seg);
\copy test_seg from 'data/test_seg.data'
CREATE INDEX test_seg_ix ON test_seg USING gist (s);
SELECT count(*) FROM test_seg WHERE s @> '11..11.3';
-- Test sorting
SELECT * FROM test_seg WHERE s @> '11..11.3' GROUP BY s;
-- Test functions
SELECT seg_lower(s), seg_center(s), seg_upper(s)
FROM test_seg WHERE s @> '11.2..11.3' OR s IS NULL ORDER BY s;
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册