フィードバックを送信
Cloud SQL 関数
コレクションでコンテンツを整理
必要に応じて、コンテンツの保存と分類を行います。
MySQL
| PostgreSQL
| SQL Server
このページでは、Cloud SQL 関数について説明します。
ベクトル変換関数
次の表に、SELECT
ステートメントでベクトル情報の操作に使用できる関数を示します。
関数
説明
vector_to_string
入力: VECTOR 出力: STRING
引数を、人が読めるベクトル形式の文字列に変換します。入力: VECTOR
型の 1 つの引数
出力: 文字列
構文:
vector_to_string(some_embedding )
string_to_vector
入力: STRING 出力: VECTOR
文字列を、人が読めるベクトル形式に変換します。これにより、ベクトルで表す���を記述できます。入力: 文字列
構文:
string_to_vector('some_embedding ')
出力: ベクトル型の 1 つの値。
検索関数
このセクションでは、Cloud SQL 検索関数について説明します。
KNN 関数
次の表に、KNN ベクトル距離の計算に使用できる関数を示します。
関数
データ型
説明
vector_distance
入力: VECTOR 出力: REAL
2 つの VECTOR
間のベクトル距離を計算します。2 つの VECTOR
は同じディメンションにする必要があります。入力 : 必須。2 つのベクトル値を取ります。3 番目の文字列引数(省略可)は距離の測定値を示します。デフォルトは「l2_squared_distance」です。他のオプションには、cosine_distance と dot_product があります。
出力 : 2 つのベクトル間の距離。
例:
SELECT vector_distance(string_to_vector('[1,-2,3]'), string_to_vector('[1,2,3]'), 'Distance_Measure=dot_product');
cosine_distance
入力: VECTOR 出力: REAL
2 つのベクトル間の角度のコサインを計算するアルゴリズム。値が小さいほど、ベクトル間の類似度が高くなります。入力 : 2 つのベクトル値を受け取ります。これらは列名または定数にできます。
出力 : 2 つのベクトル間のコサイン距離。
例:
SELECT cosine_distance(string_to_vector('[1,2,3]'), string_to_vector('[1,1,1]'));
SELECT id
FROM t1
ORDER BY cosine_distance(string_to_vector('[1,2,3]'), embedding_column_name)
LIMIT 10;
dot_product
入力: VECTOR 出力: REAL
2 つの入力ベクトルの間のドット積演算を実行して、単一のスカラー値を計算して出力するアルゴリズム。入力 : 2 つのベクトル値を受け取ります。これらは列名または定数にできます。
出力 : 2 つのベクトル積。
例:
SELECT dot_product(string_to_vector('[1,2,3]'), string_to_vector('[1,1,1]'));
SELECT id FROM t1 ORDER BY dot_product(string_to_vector('[1,2,3]'), embbeding_column_name) LIMIT 10;
l2_squared_distance
入力: VECTOR 出力: REAL
2 つの入力ベクトル間の各ディメンションの二乗距離を加算して、それらの間のユークリッド距離を測定するアルゴリズム。入力 : 2 つのベクトル値を受け取ります。これらは列名または定数にできます。
出力 : 2 つのベクトル間の L2 二乗距離。
例:
SELECT l2_squared_distance(string_to_vector('[1,2,3]'), string_to_vector('[1,1,1]'));
SELECT id
FROM t1
ORDER BY l2_squared_distance(string_to_vector('[1,2,3]'), embbeding_column_name)
LIMIT 10;
ANN 関数
次の表に、ベクトル距離の計算に使用できる関数を示します。
関数
データ型
説明
approx_distance
入力: VECTOR 出力: REAL
選択したアルゴリズムを使用して、距離の測定値を満たす Top-K の最も近い行を見つけます。この関数は、ベクトル列から定数値への近似最近傍をクエリします。2 つのエンベディング列の VECTOR
型と定数 VECTOR
は同じディメンションである必要があります。この関数は、ANN 検索ではなく KNN(完全一致検索)検索にフォールバックする場合があります。この関数を使用するクエリには、上限を含める必要があります。構文:
approx_distance(embedding_name ,
query_vector ,
'distance_measure=algorithm_name
[, num_leaves_to_search=value ]'
入力:
embedding_name: ベーステーブルのベクトル エンベディング列名。
query_vector: string_to_vector
の出力にできる(必須ではありません)「VECTOR」型の定数。
カンマ区切りの検索文字列のオプションは次のとおりです。
例:
'distance_measure=dot_product,
num_leaves_to_search=100'
必須の LIMIT 値: 指定された上限は、返される近傍の数(Top-K とも呼ばれます)として使用されます。
出力 : ベーステーブルの Top-K の最も近い行の近似距離。
この関数は、ORDER BY
リストまたは SELECT
リストでのみ使用できます。
例:
SELECT id, approx_distance(embedding_column_name
string_to_vector('[1,1,1]'),
'distance_measure=cosine') dist from t1
ORDER BY dist LIMIT 10;
SELECT id
FROM t1
ORDER BY
approx_distance(
embedding_column_name
string_to_vector('[1,1,1]'),
'distance_measure=dot_product,num_leaves_to_search=100) LIMIT 4;
次のステップ
フィードバックを送信
特に記���のない限り、このページのコンテンツはクリエイティブ・コモンズの表示 4.0 ライセンス により使用許諾されます。コードサンプルは Apache 2.0 ライセンス により使用許諾されます。詳しくは、Google Developers サイトのポリシー をご覧ください。Java は Oracle および関連会社の登録商標です。
最終更新日 2025-06-10 UTC。
ご意見をお聞かせください
[[["わかりやすい","easyToUnderstand","thumb-up"],["問題の解決に役立った","solvedMyProblem","thumb-up"],["その他","otherUp","thumb-up"]],[["わかりにくい","hardToUnderstand","thumb-down"],["情報またはサンプルコードが不正確","incorrectInformationOrSampleCode","thumb-down"],["必要な情報 / サンプルがない","missingTheInformationSamplesINeed","thumb-down"],["翻訳に関する問題","translationIssue","thumb-down"],["その他","otherDown","thumb-down"]],["最終更新日 2025-06-10 UTC。"],[],[]]