TRANSLATEは文字列を別の文字列で置き換えるSQL関数である。
DBMS | TRANSLATE |
---|---|
MySQL | ✗ |
Oracle | ✓ |
PostgreSQL | ✓ |
SQL Server | ✗ |
文字列strの中に含まれる文字列searchをreplaceで置き換える。置き換え後の文字列の中にsearchが含まれていれば、再度replaceで置き換える。
TRANSLATE(str, search, replace)
REPLACEとTRANSLATEの違いは、TRANSLATEの方は置換後の文字列も再度置き換えることである。
SQL> SELECT REPLACE('abcc', 'abc', 'ab') FROM DUAL;
REP
---
abc
SQL> SELECT TRANSLATE('abcc', 'abc', 'ab') FROM DUAL;
TR
--
ab
SQL>