本節ではbytea
型の値を調べたり操作するための関数と演算子について説明します。
SQLでは、引数の区切りにカンマではなくキーワードを使う文字列関数を、いくつか定義しています。 詳細は表9.11「SQLバイナリ文字列関数と演算子」を参照してください。 またPostgreSQLは、これらの関数に対して通常の関数呼び出し構文を使用するバージョンを提供します(表9.9「その他の文字列関数」を参照してください)。
このページで示されるサンプル結果は、サーバパラメータであるbytea_output
がescape
に設定されていることを想定しています(この設定はPostgreSQLの伝統的な形式です)。
表9.11 SQLバイナリ文字列関数と演算子
この他、表9.12「その他のバイナリ文字列関数」に列挙するバイナリ列操作関数が使えます。 そのいくつかは、表9.11「SQLバイナリ文字列関数と演算子」で説明した標準SQLの文字列関数を実装するために内部的に使用されています。
表9.12 その他のバイナリ文字列関数
get_byte
とset_byte
はバイナリ列の先頭バイトを0バイトとして数えます。
get_bit
とset_bit
は各バイト内を右からビットを数えます。例えばビット0は先頭バイトの最下位ビットとなり、ビット15は第二バイトの最上位ビットとなります。
9.20. 集約関数におけるstring_agg
集約関数や33.4. サーバ側の関数のラージオブジェクト関数も参照してください。