Click here to view and discuss this page in DocCommentXchange. In the future, you will be sent there automatically.
ジオメトリを複数線ストリング値に変換します。
geometry-expression.ST_ToMultiLine()
ST_MultiLineString geometry-expression が ST_MultiLineString タイプの場合は、geometry-expression を返します。geometry-expression が線のみを含むジオメトリコレクションの場合は、geometry-expression の要素を含む複数線ストリングオブジェクトを返します。geometry-expression が ST_LineString タイプの場合は、1 つの要素 (geometry-expression) を含む複数線ストリング値を返します。geometry-expression が空のセットの場合は、ST_MultiCurve タイプの空のセットを返します。それ以外の場合は、例外条件が発生します。
結果の空間参照系識別子は、geometry-expression の空間参照系と同じです。
geometry-expression が ST_MultiLineString 値であるとすでにわかっている場合は、ST_ToMultiLine メソッドよりも TREAT( geometry-expression AS ST_MultiLineString ) を使用する方が効率的です。
ST_ToMultiLine では、デフォルトで、使用可能な場合はジオメトリの元のフォーマットが使用されます。それ以外の場合は、内部フォーマットが使用されます。内部フォーマットと元のフォーマットの詳細については、STORAGE FORMAT 句、CREATE SPATIAL REFERENCE SYSTEM 文を参照してください。
SQL/MM (ISO/IEC 13249-3: 2006) 5.1.33
次の例では、Shape カラムが ST_Geometry タイプであり、ST_Geometry では ST_Length メソッドがサポートされていないため、エラーが返されます。
SELECT Shape.ST_Length() FROM SpatialShapes WHERE ShapeID = 29
次の例では、ST_ToMultiLine を使用して、Shape カラム式のタイプを ST_MultiLineString に変更します。この例は、Shape 値が ST_LineString タイプである ShapeID 5 にも使用できます。ST_Length は、結果として 4.236068 を返します。
4.236068
SELECT Shape.ST_ToMultiLine().ST_Length() FROM SpatialShapes WHERE ShapeID = 29
この場合、Shape カラムの値は ST_MultiLineString タイプであるとわかっているため、TREAT を使用して式のタイプを効率的に変更できます。この例は、Shape 値が ST_LineString タイプである ShapeID 5 には使用できません。「」ST_Length は、結果として 4.236068 を返します。
SELECT TREAT( Shape AS ST_MultiLineString ).ST_Length() FROM SpatialShapes WHERE ShapeID = 29