- 카테고리:
ST_MAKELINE¶
입력 오브젝트의 점을 연결하는 선을 나타내는 GEOGRAPHY 또는 GEOMETRY 오브젝트를 생성합니다.
- 참고 항목:
구문¶
ST_MAKELINE( <geography_expression_1> , <geography_expression_2> )
ST_MAKELINE( <geometry_expression_1> , <geometry_expression_2> )
인자¶
geography_expression_1
연결할 점을 포함하는 GEOGRAPHY 오브젝트입니다. 이 오브젝트는 Point, MultiPoint, 또는 LineString이어야 합니다.
geography_expression_2
연결할 점을 포함하는 GEOGRAPHY 오브젝트입니다. 이 오브젝트는 Point, MultiPoint, 또는 LineString이어야 합니다.
geometry_expression_1
연결할 점을 포함하는 GEOMETRY 오브젝트입니다. 이 오브젝트는 Point, MultiPoint, 또는 LineString이어야 합니다.
geometry_expression_2
연결할 점을 포함하는 GEOMETRY 오브젝트입니다. 이 오브젝트는 Point, MultiPoint, 또는 LineString이어야 합니다.
반환¶
함수는 GEOGRAPHY 또는 GEOMETRY 형식의 값을 반환합니다. 값은 입력 GEOGRAPHY 또는 GEOMETRY 오브젝트에 의해 지정된 모든 점을 연결하는 LineString입니다.
사용법 노트¶
입력 GEOGRAPHY 오브젝트가 여러 점을 포함하는 경우, ST_MAKELINE은 오브젝트에 지정된 모든 점을 연결합니다.
ST_MAKELINE은 입력에 지정된 순서대로 점을 연결합니다.
GEOMETRY 오브젝트의 경우 두 입력 GEOMETRY 오브젝트의 SRID가 서로 다른 경우 함수에서 오류를 보고합니다.
GEOMETRY 오브젝트의 경우 반환된 GEOMETRY 오브젝트는 입력과 동일한 SRID를 가집니다.
예¶
GEOGRAPHY 예¶
이 섹션의 예는 WKT 형식으로 출력을 표시합니다.
alter session set GEOGRAPHY_OUTPUT_FORMAT='WKT';
다음 예는 ST_MAKELINE을 사용하여, 두 점을 연결하는 LineString을 생성합니다.
SELECT ST_MAKELINE( TO_GEOGRAPHY('POINT(37.0 45.0)'), TO_GEOGRAPHY('POINT(38.5 46.5)') ) AS line_between_two_points; +-----------------------------+ | LINE_BETWEEN_TWO_POINTS | |-----------------------------| | LINESTRING(37 45,38.5 46.5) | +-----------------------------+
다음 예는 Point를 MultiPoint의 점과 연결하는 LineString을 생성합니다.
SELECT ST_MAKELINE( TO_GEOGRAPHY('POINT(-122.306067 37.55412)'), TO_GEOGRAPHY('MULTIPOINT((-122.32328 37.561801), (-122.325879 37.586852))') ) AS line_between_point_and_multipoint; +-----------------------------------------------------------------------------+ | LINE_BETWEEN_POINT_AND_MULTIPOINT | |-----------------------------------------------------------------------------| | LINESTRING(-122.306067 37.55412,-122.32328 37.561801,-122.325879 37.586852) | +-----------------------------------------------------------------------------+
예의 출력에서 보이듯이 ST_MAKELINE은 입력에 지정된 순서대로 점을 연결합니다.
다음 예는 MultiPoint의 점을 다른 LineString과 연결하는 LineString을 생성합니다.
SELECT ST_MAKELINE( TO_GEOGRAPHY('MULTIPOINT((-122.32328 37.561801), (-122.325879 37.586852))'), TO_GEOGRAPHY('LINESTRING(-122.306067 37.55412, -122.496691 37.495627)') ) AS line_between_multipoint_and_linestring; +---------------------------------------------------------------------------------------------------+ | LINE_BETWEEN_MULTIPOINT_AND_LINESTRING | |---------------------------------------------------------------------------------------------------| | LINESTRING(-122.32328 37.561801,-122.325879 37.586852,-122.306067 37.55412,-122.496691 37.495627) | +---------------------------------------------------------------------------------------------------+
GEOMETRY 예¶
이 섹션의 예는 WKT 형식으로 출력을 표시합니다.
ALTER SESSION SET GEOMETRY_OUTPUT_FORMAT='WKT';
첫 번째 예제에서는 두 점 사이에 선을 생성합니다.
SELECT ST_MAKELINE( TO_GEOMETRY('POINT(1.0 2.0)'), TO_GEOMETRY('POINT(3.5 4.5)')) AS line_between_two_points;+-------------------------+ | LINE_BETWEEN_TWO_POINTS | |-------------------------| | LINESTRING(1 2,3.5 4.5) | +-------------------------+
다음 예제에서는 MultiPoint의 점을 한 점과 연결하는 LineString을 만드는 방법을 보여줍니다.
SELECT ST_MAKELINE( TO_GEOMETRY('POINT(1.0 2.0)'), TO_GEOMETRY('MULTIPOINT(3.5 4.5, 6.1 7.9)')) AS line_from_point_and_multipoint;+---------------------------------+ | LINE_FROM_POINT_AND_MULTIPOINT | |---------------------------------| | LINESTRING(1 2,3.5 4.5,6.1 7.9) | +---------------------------------+
다음 예는 MultiPoint의 점을 다른 LineString과 연결하는 LineString을 생성합니다.
SELECT ST_MAKELINE( TO_GEOMETRY('LINESTRING(1.0 2.0, 10.1 5.5)'), TO_GEOMETRY('MULTIPOINT(3.5 4.5, 6.1 7.9)')) AS line_from_linestring_and_multipoint;+------------------------------------------+ | LINE_FROM_LINESTRING_AND_MULTIPOINT | |------------------------------------------| | LINESTRING(1 2,10.1 5.5,3.5 4.5,6.1 7.9) | +------------------------------------------+