に最終更新
L2_DISTANCE
説明
ユークリッド空間にある二点間の距離を計算します(ベクトルの値は座標です)。
構文
L2_DISTANCE(<array1>, <array2>)
引数
| 引数 | 説明 |
|---|---|
<array1> | 第一ベクトル(各値は座標)。入力配列の要素型は TINYINT、SMALLINT、INT、BIGINT、LARGEINT、FLOAT、DOUBLE です。要素数は array2 と一致する必要があります |
<array2> | 第二ベクトル(各値は座標)。入力配列の要素型は TINYINT、SMALLINT、INT、BIGINT、LARGEINT、FLOAT、DOUBLE に対応します。要素数は array1 と一致する必要があります |
戻り値
ユークリッド空間にある二点間の距離を返します(ベクトルの値は座標です)。戻り値の型は FLOAT です。
いずれかの入力配列が NULL、または NULL 要素を含む場合、エラーになります。
例
SELECT L2_DISTANCE([4, 5], [6, 8]),L2_DISTANCE([3, 6], [4, 5]);
+-----------------------------+-----------------------------+
| l2_distance([4, 5], [6, 8]) | l2_distance([3, 6], [4, 5]) |
+-----------------------------+-----------------------------+
| 3.605551 | 1.414214 |
+-----------------------------+-----------------------------+
入力配列が NULL の場合はエラーになります。
SELECT L2_DISTANCE(NULL, [1, 2]);
ERROR 1105 (HY000): errCode = 2, detailMessage = (127.0.0.1)[INVALID_ARGUMENT]First argument for function l2_distance cannot be null
入力配列に NULL 要素がある場合はエラーになります。
SELECT L2_DISTANCE([1, NULL], [1, 2]);
ERROR 1105 (HY000): errCode = 2, detailMessage = (127.0.0.1)[INVALID_ARGUMENT]First argument for function l2_distance cannot have null