postgresql - 文字関数
文字列の連結
concat(str, …)
この関数は文字列を連結するために使用され、NULL パラメーターを無視し、concat_ws(sep, str, …)
指定された区切り文字 sep を使用して文字列を連結します。
select concat(2, null, 22), concat_ws(' and ', 2, null, 22);
2 本の垂直バー ( ||
) を使用して文字列を連結することもできますが、NULL パラメーターは NULL を返します。
SELECT 'Post'||'greSQL', 'Post'||NULL||'greSQL';
文字とエンコーディング
ascii(string)
この関数は最初の文字のコードを返しますASCII
。UTF8 リターンUnicode
コードの場合、他のマルチバイト
エンコーディングの場合、引数はASCII
文字である必要があります。
select ascii('x');
chr(int)
この関数は、エンコーディングに対応する文字を返します。UTF8 の場合、パラメータは Unicode コードを指定します。他のマルチバイト
エンコーディングの場合、パラメータは ASCII 文字に対応する必要があります。テキスト データ型には NULL 文字を格納できないため、パラメーターを 0 (NULL 文字) にすることはできません
。
文字列の長さ
bit_length(string)
関数は文字列に含まれるビット数を計算するために使用されます。length(string)
、char_length(string)
、
character_length(string)
関数は文字列に含まれる文字数を計算し、関数は文字列に含まれるoctet_length(string)
バイト数を計算します。
大文字と小文字の変換
lower(string)
関数は文字列を小文字に変換し、
upper(string)
関数は文字列を大文字に変換し、
initcap(string)
関数は各単語の最初の文字を大文字にし、残りを小文字にします。
部分文字列の検索と置換
substring(string [FROM] [for])
この関数は、FROM の位置から始まる for 文字の部分文字列を抽出するために使用され、位置は
1 からカウントされます。substr(string, FROM [, count])
同じ効果があります。
left(str, n)
この関数は、文字列の左から n 文字を返します。n が負の場合、最後の |n| 文字を除く
すべての文字が返されます
right(str, n)
。この関数は、文字列の右側の n 文字を返します。n が負の場合、左の |n| 文字を除く文字を返します
。
substring(string FROM pattern)
この関数は、POSIX 正規表現に一致する部分文字列を抽出します。
substring(string FROM pattern for escape)
この関数は、SQL 正規表現に一致する部分文字列を抽出します。
regexp_match(string, pattern [, flags])
この関数は、POSIX 正規表現に一致する最初の部分文字列を返します。
regexp_matches(string, pattern [, flags])
この関数は、POSIX 正規表現に一致するすべての部分文字列を返し、結果は部分文字列の位置を返す
セットになります。この関数の効果は同じですが、パラメータの順序が逆になります。この関数は、文字列がで始まるかどうかを判断し、 で始まる場合は true を返し、そうでない場合はfalse を返します。この関数は、文字列 string 内の FROM 部分文字列を部分文字列に置き換えます。関数は、正規表現に一致する文字列 string 内の部分文字列を に置き換えます。この関数は、文字列 string 内の FROM に出現する文字列を、to 内の対応する位置の文字に置き換えます。長さが to より大きい場合、to に対応する値がない文字は削除されます。この関数は部分文字列を使用して、次の文字列を上書きします。
position(substring in string)
strpos(string, substring)
starts_with(string, prefix)
prefix
replace(string, FROM, to)
to
regexp_replace(string, pattern, replacement [, flags])
POSIX
pattern
replacement
translate(string , FROM , to)
FROM
overlay(string placing substring FROM [for])
FROM が始まる文字の。
select overlay('txxxxas' placing 'hom' from 2 for 4);
切り詰めて埋める
trim([leading | trailing | both] [characters] FROM string)
この関数は、指定された文字 (デフォルトではスペース) で構成される最長の部分文字列を、文字列の先頭 (先頭)、末尾 (末尾)、または両端 (両方) から削除します。
trim([leading | trailing | both] [FROM] string [, characters])
この関数の効果は同じです。
select trim(both 'xyz' from 'yxTomxx');
btrim(string [, characters])
この関数の機能は、上記のトリム関数の両方のオプションと同じであり、ltrim(string [, characters])
上記のトリム関数の先頭のオプションと同じであり、rtrim(string [, characters])函数上面 trim 函数的 trailing
オプションも同じです。
select btrim('yxTomxx', 'xyz'), ltrim('yxTomxx', 'xyz'), rtrim('yxTomxx',
'xyz');
lpad(string, length [, fill ])
この関数は、長さが length になるまで、左側の fill (デフォルトのスペース) 内の文字で文字列を埋めます。文字列が length より長い場合は、右から length に切り詰められます。
rpad(string, length [, fill ])
この関数は、長さが length になるまで、文字列の右側にある文字 (デフォルトではスペース) を文字列に埋め込みます。文字列が length より長い場合は、右から length に切り詰められます。
repeat(string, number)
この関数は文字列 string を N 回繰り返します。
select lpad('hi', 5, 'xy'), rpad('hi', 5, 'xy'), repeat('Pg', 4);
文字列の書式設定
format(formatstr , formatarg)
C 言語の sprintf 関数と同様に、文字列をフォーマットするために使用されます。
select format('hello %s, %1$s', 'world');
MD5値
md5(string)
MD5 値を 16 進形式で返すために使用される関数。
文字列の分割
regexp_split_to_table(string, pattern[, flags])
POSIX
正規表現を区切り文字として使用して文字列を分割する関数
。関数の戻り値の型はテキスト コレクションです。
select regexp_split_to_table('hello world', '\s+');
split_part(string, delimiter, field)
この関数はdelimiter
文字列を分割し、指定された項目 (
1 から数えて) を返します。
select split_part('abc~@~def~@~ghi', '~@~', 2);
文字列を逆にする
reverse(str)
文字列を反転する関数。
select reverse('上海自来水');