すべてのプロダクト
Search
ドキュメントセンター

AnalyticDB:バイナリ関数と演算子

最終更新日:Sep 29, 2024

AnalyticDB for PostgreSQLは、PostgreSQLのバイナリ関数および演算子と互換性があります。 このトピックでは、AnalyticDB for PostgreSQLでサポートされているバイナリ関数と演算子について説明し、バイナリ関数と演算子の使用方法の例を示します。

PostgreSQLのバイナリ関数と演算子の詳細については、「バイナリ文字列関数と演算子」をご参照ください。

バイナリ文字列関数と演算子

バイナリ演算子は、2つのオペランドを操作する演算子です。 コンピュータサイエンスでは、バイナリ演算子を使用して、ビット単位のAND (&) 、ビット単位のOR (|) 、ビット単位のXOR (|) 、ビット単位のNOT (|) 、左シフト (<<) 、および右シフト (>>) などのビット単位の演算を実行します。

機能

戻り値のデータ型

説明

例:

サンプル結果

文字列 | | 文字列

BYTEA

2つの文字列を連結します。

'\\Post'::bytea | |'\047gres\\000 '::bytea

\\Post'gres\000

octet_length(string)

INT

バイナリ文字列のバイト数を返します。

octet_length('jo\000se'::bytea)

5

overlay (int [for int] からの文字列配置文字列)

BYTEA

文字列内の特定の部分文字列を別の文字列に置き換えます。

オーバーレイ ('Th\000omas'::bytea placing '\002\003'::bytea from 2 for 3)

T\\002\\003mas

位置 (文字列の部分文字列)

INT

文字列内の特定の部分文字列の開始位置を返します。

位置 ('\000om'::bytea in 'Th \000oma'::bytea)

3

部分文字列 (string [from int] [intの場合]

BYTEA

文字列から部分文字列を抽出します。

サブストリング ('Th\000omas'::bytea from 2 for 3)

h\000o

trim([both] bytes from string)

BYTEA

stringパラメーターで指定された文字列の先頭と末尾から、bytesパラメーターで指定されたバイトのみを含む最長シーケンスを削除します。

トリム ('\000\001'::bytea from '\000Tom\001'::bytea)

トム

バイナリ関数

バイナリ関数は、2つの入力パラメーターを受け取り、結果を返す関数です。 プログラミングでは、1つの結果を返すために2つの入力パラメータを必要とするアルゴリズムを表すためにバイナリ関数が使用されます。

機能

戻り値のデータ型

説明

例:

サンプル結果

bytea(string bytea,bytes bytea)

BYTEA

stringパラメーターで指定された文字列の先頭と末尾から、bytesパラメーターで指定されたバイトのみを含む最長シーケンスを削除します。

btrim('\000trim\001'::bytea, '\000\001'::bytea)

トリム

decode (文字列テキスト、形式テキスト)

BYTEA

stringパラメーターで指定された文字列のテキスト表現からバイナリデータをデコードします。 formatパラメーターの有効値は、encode関数の有効値と同じです。

decode('123\000456 ', 'escape')

123\000456

encode(data bytea,format text)

テキスト

バイナリデータをテキスト表現にエンコードします。 formatパラメーターの有効な値: base64hex、およびescapeescapeは、ゼロバイトと高ビットセットのバイトを8進シーケンス (\nnn) に変換し、各バックスラッシュ (\) の前にバックスラッシュ (\) をエスケープ文字として付けます。

エンコード ('123\000456 '::bytea, 'escape')

123\000456

get_bit (文字列、オフセット)

INT

文字列からビットを抽出します。

get_bit('Th\000omas'::bytea, 45)

1

get_byte (文字列、オフセット)

INT

文字列からバイトを抽出します。

get_byte('Th\000omas'::bytea, 4)

109

長さ (文字列)

INT

バイナリ文字列の長さを返します。

長さ ('jo\000se'::bytea)

5

md5 (文字列)

テキスト

stringパラメーターで指定された文字列のMD5ハッシュ値を計算し、結果を16進形式で返します。

md5('Th\000omas'::bytea)

8ab2d3c9689aaf18 b4958c334c82d8b1

set_bit (文字列、オフセット、newvalue)

BYTEA

文字列にビットを設定します。

set_bit('Th\000omas'::bytea, 45, 0)

Th\000omAs

set_byte (文字列、オフセット、newvalue)

BYTEA

文字列にバイトを設定します。

set_byte('Th\000omas'::bytea, 4, 64)

Th\000o @ as

sha224 (ビテア)

BYTEA

文字列のSHA-224ハッシュ値を返します。

sha224('abc')

\x23097d223405d8228642a477bda2 55b32aadbce4bda0b3f7e36c9da 7

sha256(bytea)

BYTEA

文字列のSHA-256ハッシュ値を返します。

sha256('abc')

\xba7816bf8f01cfea414140de5dae2223 b00361a396177a9cb410ff61f20015ad

sha384(bytea)

BYTEA

文字列のSHA-384ハッシュ値を返します。

sha384('abc')

\xcb00753f45a35e8bb5a03d699ac65007 272c32ab0eded1631a8b605a43ff5bed 8086072ba1e7cc2358baeca134c825a 7

sha512 (ビティー)

BYTEA

文字列のSHA-512ハッシュ値を返します。

sha512('abc')

\xddaf35a193617abacc417349ae204131 12e6fa4e89a97ea20a9eeee64b55d39a 2192992a274fc1a836ba3c23a3feebbd 454d4423643ce80e2a9ac94fa54ca4 9f