首页 > 代码库 > SQL之字符函数

SQL之字符函数

 

1.CHR
功用:返回与所给数值参数等当的字符,返回的字符取决于数据库所依赖的字符集(如ASCLL)。
SELECT CODE,CHR(CODE) FROM CHARACTERS;

2.CONCAT
功用:将两个字符串连接起来。
SELECT CONCAT(FIRSTNAME,LASTNAME) "FIRST AND LAST NAMES" FROM CHARACTERS;
注意:当用多个词来做为别名时需对它们使用引号,请检查你的解释器,看看它是否支持别名。

3.INITCAP
功用:将参数的第一个字母变为大写 此外其它的字母则转换成小写。
SELECT FIRSTNAME BEFORE,INITCAP(FIRSTNAME) AFTER FROM CHARACTERS;

4.LOWER 和 UPPER
功用:LOWER 将参数转换为全部小写字母,而 UPPER 则把参数全部转换成大写字母。
SELECT FIRSTNAME,UPPER(FIRSTNAME),LOWER(FIRSTNAME) FROM CHARACTERS;

5.LPAD 与 RPAD(扩充和补填函数)
功用:这两个函数最少需要两个参数,最多需要三个参数;
第一个参数是需要处理的字符串,
第二个参数是需要将字符串扩充的宽度,
第三个参数表示加宽部分用什么字符来做填补,第三个参数的默认值为空格,但也可以是单个的字符或字符串

SELECT LASTNAME,LPAD(LASTNAME,20,‘*’) FROM CHARACTERS;
左填充

SELECT LASTNAME,RPAD(LASTNAME,20,‘*’) FROM CHARACTERS;
右填充,注意字符右边可能有隐藏的空格

6.LTRIM 与 RTRIM(末端剪除函数)
功用:LTRIM 和 RTRIM 至少需要一个参数,最多允许两个参数;
第一个参数与 LPAD 和 RPAD类似,是一个字符串;
第二个参数也是一个字符或字符串,默认则是空格;
如果第二个参数不是空格的话,那么该函数将会像剪除空格那样剪除所指定的字符。

SELECT LASTNAME,RTRIM(LASTNAME) FROM CHARACTERS;

验证:
SELECT LASTNAME,RPAD(RTRIM(LASTNAME),20,‘*’) FROM CHARACTERS;

SELECT LASTNAME,LTRIM(LASTNAME,‘C’) FROM CHARACTERS;

7.REPLACE(替换函数)
功用:该函数需要三个参数;
第一个参数是需要搜索的字符串
第二个参数是搜索的内容
第三个参数则是需要替换成的字符串

注意:如果第二个参数省略或者是 NULL,那么只有将源字符串返回而不会执行任何操作。

SELECT LASTNAME,REPLACE(LASTNAME,‘ST’) REPLACEMENT FROM CHARACTERS;
相当于删除字符串‘ST‘

8.SUBSTR
功用:这个函数有三个参数,允许你将目标字符串的一部份输出
第一个参数为目标字符串,
第二个字符串是将要输出的子串的起点,
第三个参数是将要输出的子串的长度

注意:如果第二个参数为负数,那么将会从源串的尾部开始向前定位至负数的绝对值的位置
如果没有第三个参数,将会输出字符串余下的部分

SELECT FIRSTNAME,SUBSTR(FIRSTNAME,2,3) FROM CHARACTERS;

SELECT FIRSTNAME,SUBSTR(FIRSTNAME,-13,2) FROM CHARACTERS;

SELECT FIRSTNAME,SUBSTR(FIRSTNAME,3) FROM CHARACTERS;

9.TRANSLATE
功用:有三个参数:目标字符串,源字符串和目的字符串
在目标字符串与源字符串中均出现的字符将会被替换成对应的目的字符串的字符

10.INSTR
功用:第一个参数是目标字符串,
第二个参数是匹配的内容,
第三和第四个参数是数字,用以指定开始搜索的起点以及指出第几个满足条件的将会被返回
默认第三个与第四个参数的数值均为1,如果第三个数值为负数,那么将会从后向前搜索

SELECT LASTNAME,INSTR(LASTNAME,‘O’,2,1) FROM CHARACTERS;

11.LENGTH
功用:返回指定字符串的长度

SELECT FIRSTNAME,LENGTH(RTRIM(FIRSTNAME)) FROM CHARACTERS;

 

SQL之字符函数