当前位置:网站首页>SQL function $TRANSLATE
SQL function $TRANSLATE
2022-08-02 11:35:00 【User 7741497】
SQL function $TRANSLATE
A string function that performs character-by-character replacement.
Outline
$TRANSLATE(string,identifier[,associator])parameter
string- the target string.It can be a field name, literal, host variable, or SQL expression.identifier- The character to search for in the string.It can be a string or numeric literal, host variable, or SQL expression.associator- optional - replacement characters corresponding to each character in the identifier.It can be a string or numeric literal, host variable, or SQL expression.
Description
The$TRANSLATE function performs character-by-character substitution in the return value string.It processes string arguments one character at a time.It compares each character in the string with each character in the identifier parameter.If $TRANSLATE finds a match, it notes the position of that character.
- The two-argument form of
$TRANSLATEremoves all instances of characters in the identifier argument from the output string. The three-argument form of $TRANSLATEreplaces all instances of each identifier character found in the string with the associated character corresponding to the position.Replacement is performed based on characters, not strings.If the identifier parameter contains more characters than the associated parameter, the extra characters in the identifier parameter are removed from the output string.If the identifier parameter contains fewer characters than the associated parameter, the extra characters in the associated parameter are ignored.
$TRANSLATE is case sensitive.
$TRANSLATE cannot be used to replace NULL with a character.
If too few parameters are specified, SQLCODE -380 will be issued.If too many parameters are specified, SQLCODE -381 is issued.
$TRANSLATE and REPLACE
$TRANSLATE performs character-by-character matching and replacement.REPLACE performs string-to-string matching and replacement.REPLACE can replace a single specified substring of one or more characters with another substring, or delete multiple instances of a specified substring.$TRANSLATE can replace multiple specified characters with the corresponding specified replacement characters.
By default, both functions are case-sensitive, start at the beginning of the string, and replace all matching instances.REPLACE has parameters that can be used to change these defaults.
Example
In the following example, the two parameters $TRANSLATE modify the name value by removing punctuation (comma, space, period, apostrophe, hyphen), returning a name that contains only alphabetic characters.Note that identifiers double the apostrophe to escape it as a literal character, not a string delimiter:
SELECT TOP 20 Name,$TRANSLATE(Name,', .''-') AS AlphaNameFROM Sample.PersonWHERE Name %STARTSWITH 'O'In the following example, the three-argument $TRANSLATE modifies the name value by replacing commas and spaces with caret (^) characters, returning a three-part delimitedFirst name (last name, first name, middle initial).Note that the linker must specify “^” as many times as there are characters in the identifier:
SELECT TOP 20 Name,$TRANSLATE(Name,', ','^^') AS PiecesNamePuncFROM Sample.PersonWHERE Name %STARTSWITH 'O'In the following example, the three-parameter $TRANSLATE is specified by replacing commas and spaces with caret (^) characters (specified in identifiers and ligators) andRemove periods, apostrophes and hyphens (specified in identifiers, from associated persons):
SELECT TOP 20 Name,$TRANSLATE(Name,', .''-','^^') AS PiecesNameNoPuncFROM Sample.PersonWHERE Name %STARTSWITH 'O'边栏推荐
- Metaverse "Drummer" Unity: Crazy expansion, suspense still exists
- Several reasons why applet plugins benefit developers
- Kotlin的协程与生命周期
- ansible模块--copy模块
- 当POC遇见RPA:RPA项目顺利实施的关键
- ssm web page access database data error
- 从幻核疑似裁撤看如何保证NFT的安全
- Hub and Spoke配置案例
- go源码之sync.Waitgroup
- What is the future of smartwatches?
猜你喜欢

Multithreading (Basic) - 40,000 word summary

使用kubesphere图形界面创建一个devops的CI/CD流程

Outsourced Student Management System Architecture Documentation

Crack detection technology based on deep learning

When not to use () instead of Void in Swift

受邀出席Rust开发者大会|Rust如何助力量化高频交易?

Breaking the Boundary, Huawei's Storage Journey

保姆级教程:写出自己的移动应用和小程序(篇二)

Three.JS程序化建模入门

通过方法引用获取方法名
随机推荐
npm run dev 和 npm run serve区别
LeetCode每日一练 —— 225. 用队列实现栈
关于#oracle#的问题,如何解决?
Shell编程之条件语句
Idea 全局搜索(idea如何全局搜索关键字)
ssm web page access database data error
When not to use () instead of Void in Swift
有奖征集|TaoCloud&宝德联合举办全闪POC!
X86函数调用模型分析
ansible module --copy module
Several reasons why applet plugins benefit developers
SQL函数 TRIM
SQL函数 $TRANSLATE
情景剧《重走长征路》上演
CAN总线的AUTOSAR网络管理
Hub and Spoke配置案例
半夜赶工制作简报的我好想说 : 确定了,最终稿就是这样
idea常用插件
使用kubesphere图形界面创建一个devops的CI/CD流程
【MySQL系列】- LIKE查询 以%开头一定会让索引失效吗