17
CREATE TABLE POLYGON_TBL(f1 polygon);
20
INSERT INTO POLYGON_TBL(f1) VALUES ('(2.0,0.0),(2.0,4.0),(0.0,0.0)');
22
INSERT INTO POLYGON_TBL(f1) VALUES ('(3.0,1.0),(3.0,3.0),(1.0,0.0)');
24
-- degenerate polygons
25
INSERT INTO POLYGON_TBL(f1) VALUES ('(0.0,0.0)');
27
INSERT INTO POLYGON_TBL(f1) VALUES ('(0.0,1.0),(0.0,1.0)');
29
-- bad polygon input strings
30
INSERT INTO POLYGON_TBL(f1) VALUES ('0.0');
32
INSERT INTO POLYGON_TBL(f1) VALUES ('(0.0 0.0');
34
INSERT INTO POLYGON_TBL(f1) VALUES ('(0,1,2)');
36
INSERT INTO POLYGON_TBL(f1) VALUES ('(0,1,2,3');
38
INSERT INTO POLYGON_TBL(f1) VALUES ('asdf');
41
SELECT '' AS four, POLYGON_TBL.*;
44
SELECT '' AS three, p.*
46
WHERE p.f1 && '(3.0,1.0),(3.0,3.0),(1.0,0.0)';
49
SELECT '' AS four, p.*
51
WHERE p.f1 &< '(3.0,1.0),(3.0,3.0),(1.0,0.0)';
56
WHERE p.f1 &> '(3.0,1.0),(3.0,3.0),(1.0,0.0)';
61
WHERE p.f1 << '(3.0,1.0),(3.0,3.0),(1.0,0.0)';
64
SELECT '' AS zero, p.*
66
WHERE p.f1 >> '(3.0,1.0),(3.0,3.0),(1.0,0.0)';
71
WHERE p.f1 @ polygon '(3.0,1.0),(3.0,3.0),(1.0,0.0)';
76
WHERE p.f1 ~= polygon '(3.0,1.0),(3.0,3.0),(1.0,0.0)';
81
WHERE p.f1 ~ polygon '(3.0,1.0),(3.0,3.0),(1.0,0.0)';
97
SELECT polygon '(2.0,0.0),(2.0,4.0),(0.0,0.0)' << polygon '(3.0,1.0),(3.0,3.0),(1.0,0.0)' AS false;
100
SELECT polygon '(2.0,0.0),(2.0,4.0),(0.0,0.0)' << polygon '(3.0,1.0),(3.0,3.0),(1.0,0.0)' AS true;
103
SELECT polygon '(2.0,0.0),(2.0,4.0),(0.0,0.0)' &> polygon '(3.0,1.0),(3.0,3.0),(1.0,0.0)' AS true;
106
SELECT polygon '(2.0,0.0),(2.0,4.0),(0.0,0.0)' >> polygon '(3.0,1.0),(3.0,3.0),(1.0,0.0)' AS false;
109
SELECT polygon '(2.0,0.0),(2.0,4.0),(0.0,0.0)' @ polygon '(3.0,1.0),(3.0,3.0),(1.0,0.0)' AS false;
112
SELECT polygon '(2.0,0.0),(2.0,4.0),(0.0,0.0)' ~ polygon '(3.0,1.0),(3.0,3.0),(1.0,0.0)' AS false;
115
SELECT polygon '(2.0,0.0),(2.0,4.0),(0.0,0.0)' ~= polygon '(3.0,1.0),(3.0,3.0),(1.0,0.0)' AS false;
118
SELECT polygon '(2.0,0.0),(2.0,4.0),(0.0,0.0)' && polygon '(3.0,1.0),(3.0,3.0),(1.0,0.0)' AS true;