PostgreSQL では、 translate() 関数を使用して、文字列内の文字セットを別の文字セットに置き換えます。この関数は、最初のセットの各文字を 2 番目のセットの対応する文字にマッピングすることによって機能します。この関数は、文字単位の置き換えに特に便利です。

  • PostgreSQL で文字列のパターンを置換する Translate() 関数
  • PostgreSQL で文字列の母音を置き換える Translate() 関数
  • PostgreSQL で文字列の母音を削除する Translate() 関数

PostgreSQL の Translate() 関数の構文:

TRANSLATE(string, from_set, to_set)

string: 処理する元の文字列または列。

from_set: 置換する文字のセット。

to_set: 置換する文字のセットfrom_set

PostgreSQL の TRANSLATE() 関数の例:

例 1: PostgreSQL での基本的な文字置換

文字を 1 つずつ置き換えるには、Translate() 関数を使用します。以下の例では、文字列 ‘PostgreSQL’ の ‘o’ を ‘1’ に、’L’ を ‘2’ に、’e’ を ‘3’ に置き換えています。

SELECT TRANSLATE('PostgreSQL', 'oLe', '123') AS translated_string;

出力:

PostgreSQL の TRANSLATE() 関数 1

例 2: PostgreSQL で文字 (母音) を削除する

文字列 ‘PostgreSQL’ からすべての母音 (‘a’、’e’、’i’、’o’、’u’) を削除するには:

SELECT TRANSLATE('PostgreSQL', 'aeiou', '') AS translated_string;

出力:

PostgreSQL の TRANSLATE() 関数 2

例 3: PostgreSQL テーブルの列で translate() を使用する

summerfruits テーブルを使用します。

PostgreSQL の TRANSLATE() 関数 3

PostgreSQLの文字列から特定の文字を削除するには、以下に示すようにtranslate()関数を使用します。

select *,translate(name,'e','') as new_name from summerfruits

文字「e」はカラー列から削除されます。結果の表は次のようになります。

出力:

PostgreSQL の TRANSLATE() 関数 4

例 4: PostgreSQL テーブルの列で translate() を使用して母音を削除する

PostgreSQLの文字列列から母音を削除するには、以下に示すようにtranslate()関数を使用します。

select *,translate(name,'aeiou','') as new_name from summerfruits

母音はすべて色の列から削除されます。結果の表は次のようになります。

出力:

PostgreSQL の TRANSLATE() 関数 5

例5: PostgreSQLテーブルの母音を置換するために列でtranslate()を使用する

PostgreSQLの文字列列の母音を置き換えるには、以下に示すようにtranslate()関数を使用します。

select *,translate(name,'aeiou','12345') as new_name from summerfruits

置換は順番に行われ、aは1に置き換えられ、eは2に置き換えられます。したがって、結果の表は次のようになります。

出力:

PostgreSQL の TRANSLATE() 関数 6