postgresql/src/test/regress/expected/circle.out

94 lines
2.3 KiB
Plaintext
Raw Normal View History

--
-- CIRCLE
--
CREATE TABLE CIRCLE_TBL (f1 circle);
INSERT INTO CIRCLE_TBL VALUES ('<(0,0),3>');
INSERT INTO CIRCLE_TBL VALUES ('<(1,2),100>');
INSERT INTO CIRCLE_TBL VALUES ('1,3,5');
INSERT INTO CIRCLE_TBL VALUES ('((1,2),3)');
INSERT INTO CIRCLE_TBL VALUES ('<(100,200),10>');
INSERT INTO CIRCLE_TBL VALUES ('<(100,0),100>');
-- bad values
INSERT INTO CIRCLE_TBL VALUES ('<(-100,0),-100>');
ERROR: Bad circle external representation '<(-100,0),-100>'
INSERT INTO CIRCLE_TBL VALUES ('1abc,3,5');
ERROR: Bad circle external representation '1abc,3,5'
INSERT INTO CIRCLE_TBL VALUES ('(3,(1,2),3)');
ERROR: Bad circle external representation '(3,(1,2),3)'
SELECT * FROM CIRCLE_TBL;
f1
----------------
<(0,0),3>
<(1,2),100>
<(1,3),5>
<(1,2),3>
<(100,200),10>
<(100,0),100>
(6 rows)
SELECT '' AS six, center(f1) AS center
FROM CIRCLE_TBL;
six | center
-----+-----------
| (0,0)
| (1,2)
| (1,3)
| (1,2)
| (100,200)
| (100,0)
(6 rows)
SELECT '' AS six, radius(f1) AS radius
FROM CIRCLE_TBL;
six | radius
-----+--------
| 3
| 100
| 5
| 3
| 10
| 100
(6 rows)
SELECT '' AS six, diameter(f1) AS diameter
FROM CIRCLE_TBL;
six | diameter
-----+----------
| 6
| 200
| 10
| 6
| 20
| 200
(6 rows)
SELECT '' AS two, f1 FROM CIRCLE_TBL WHERE radius(f1) < 5;
two | f1
-----+-----------
| <(0,0),3>
| <(1,2),3>
(2 rows)
SELECT '' AS four, f1 FROM CIRCLE_TBL WHERE diameter(f1) >= 10;
four | f1
------+----------------
| <(1,2),100>
| <(1,3),5>
| <(100,200),10>
| <(100,0),100>
(4 rows)
SELECT '' as five, c1.f1 AS one, c2.f1 AS two, (c1.f1 <-> c2.f1) AS distance
FROM CIRCLE_TBL c1, CIRCLE_TBL c2
WHERE (c1.f1 < c2.f1) AND ((c1.f1 <-> c2.f1) > 0)
ORDER BY distance, one, two;
five | one | two | distance
------+----------------+----------------+------------------
| <(100,200),10> | <(100,0),100> | 90
| <(100,200),10> | <(1,2),100> | 111.370729772479
| <(1,3),5> | <(100,200),10> | 205.476756144497
| <(1,2),3> | <(100,200),10> | 208.370729772479
| <(0,0),3> | <(100,200),10> | 210.606797749979
(5 rows)