SQL辞典

【SQL文字列関数】TRANSLATE – 文字列を置換する(Oracle)

投稿日:2009年9月3日 更新日:

OracleではTRANSLATE関数を使用して文字列の置換を行う事ができます。

文法:

TRANSLATE(word, A, B)

wordの文字列Aを文字列Bに置換する。例えば、Aに’abc’とあり、Bに’123’と指定した場合、文字列のaを1、bを2に、cを3に置換する。決して’abc’という連続した文字列を対象とするのではない。

使用例:文字列のxyzをそれぞれ123に置換する。

SELECT word, TRANSLATE(word, ‘xyz’, ‘123’) FROM tbTestTable;

word      TRANSLATE(word, ‘xyz’, ‘123’)
——————————————————————-
mixi      mi1i
zexy      3e12
apple     apple

使用例:数字を全て$に置換する。

SELECT card, TRANSLATE(card, ‘0123456789’, ‘$$$$$$$$$$’) FROM tbEmpTable;

card                TRANSLATE(salary, ‘0123456789’, ‘$$$$$$$$$$’)
———————————————————————————————
0023-4444-1123-123      $$$$-$$$$-$$$$-$$$
02203-112-22-22-254      $$$$$-$$$-$$-$$-$$$
01230-445-6664-333      $$$$$-$$$-$$$$-$$$

SQLコマンド辞典に戻る

広告

広告

-SQL辞典


comment

関連記事

no image

【SQL集計関数】COUNT関数 ? 行数をカウントする (Oracle、SQL Server)

行数をカウントするにはCOUNT関数を使います。COUNT関数はDISTINCTで修飾すると、重複を取り除いた合計を抽出できます。 使用例:社員数をカウントする SELECT COUNT(*) FRO …

no image

【SQL算術関数】ABS – 絶対値を取得する(Oracle、SQL Server)

OracleやSQL Serverでは、ABS関数を使って数値の絶対値を求める事が出来ます。 文法: ABS(value) valueの絶対値を求める 使用例:夫婦の年齢差を求める。 SELECT h …

no image

【SQL文字列関数】LTRIM – 文字列の左(先頭)から空白文字を削除(Oracle、SQL Server)

OracleやSQL Serverで文字列の左(先頭)から空白(スペース)文字を削除するにはLTRIM関数を使用します。 構文: LTRIM(word) wordで指定した文字列の左側から空白文字を削 …

no image

【SQL日付関数】MONTHS_BETWEEN – 日付の差を月単位で取得する (Oracle)

Oracleで2つの日付の差を月単位で取得するには、MONTHS_BETWEEN関数を取得する。注意点はMONTH_BETWEENではなく、MONTHS_BETWEENというようにMONTHが複数形で …

no image

【SQL日付関数】DAY – 日付値から日の値のみ取得する(SQL Server)

SQL ServerではDAY関数を使用して、日付値から日のみ取得する事ができます。 文法: DAY(d) dに指定した日付値から日の値のみ取得する。 使用例:birthday列の日付から日の値のみ取 …

広告

転職