Categories:

Vector similarity functions

# VECTOR_L2_DISTANCE¶

Computes the L2 distance between two vectors.

L2 distance, also known as the Euclidean distance, is a measure of the distance between two vectors in a vector space. The distance is calculated by taking the square root of the sum of the squared differences of vector elements. The distance can be a value of zero or higher. If the distance is zero, the vectors are identical. The larger the distance, the farther apart the vectors are.

## Syntax¶

```VECTOR_L2_DISTANCE( <vector>, <vector> )
```

## Arguments¶

`vector`

The VECTOR value to calculate the distance from.

`vector`

The VECTOR value to calculate the distance to.

## Returns¶

Returns the distance between the two input vectors as a FLOAT value.

## Usage notes¶

• Due to computational optimizations in the vector comparison functions, floating-point errors may be slightly larger than usual (e.g. about 1e-4).

## Examples¶

This example uses the VECTOR_L2_DISTANCE function to determine which vectors in the table are closest to each other between columns `a` and `b`:

```CREATE TABLE vectors (a VECTOR(FLOAT, 3), b VECTOR(FLOAT, 3));
INSERT INTO vectors SELECT [1.1,2.2,3]::VECTOR(FLOAT,3), [1,1,1]::VECTOR(FLOAT,3);
INSERT INTO vectors SELECT [1,2.2,3]::VECTOR(FLOAT,3), [4,6,8]::VECTOR(FLOAT,3);

-- Compute the pairwise inner product between columns a and b
SELECT VECTOR_L2_DISTANCE(a, b) FROM vectors;
```
```+------+
| 2.3  |
|------|
| 6.95 |
+------+
```
Language: English