数据仓库之字符串函数

字符串函数

1  利用 SUBSTRING 析取字符串.
2  利用串联符号"||"合并字符串。
3 利用 INDEX定位字符串的开始位置.

SUBSTRING函数

SUBSTRING函数用来从字符串中析取一个子字符串,其格式为: SUBSTRING (<字符串表达式> FROM <开始位置> [ FOR <长度> ]);

SELECT SUBSTRING('catalog' FROM 5 FOR 3);     结果为log。
下面通过一些例子说明了SUBSTRING的使用方法:

SUBSTRING结果
SUBSTRING('catalog' FROM 5 FOR 4)log
SUBSTRING('catalog' FROM 0 FOR 3)ca
SUBSTRING('catalog' FROM -1 FOR 3)c
SUBSTRING('catalog' FROM 8 FOR 3)长度为0的字符串
SUBSTRING('catalog' FROM 1 FOR 0)长度为0的字符串
SUBSTRING('catalog' FROM 5 FOR -2)error
SUBSTRING('catalog' FROM 0)catalog
SUBSTRING('catalog' FROM 10)长度为0的字符串
SUBSTRING('catalog' FROM -1)catalog
SUBSTRING('catalog' FROM 3)talog

当SUBSTRING函数作用于整型数据类型时,SUBSTRING函数先将整型函数转化为字符串。对于不同的整型数据类型,它们的长度是不一样的,归纳为:
1 BYTEINT 加上符号后4个字符长
2 SMALLINT 加上符号后6个字符长
3 INTEGER 加上符号后11个字符长
当整型数转换为字符类型时,数字向右对齐,不足位补零,最前面为符号 

字符串合并

字符串合并的符号是"||",它把两个字符串串联成一个字符串。其基本格式为:<字符串1> || <字符串2>


INDEX (字符串定位函数)

INDEX用来在一个字符串中定位一个子串的开始位置。如下面的例子:
SELECT INDEX('abc', 'b'); 返回结果2

SELECT INDEX('abc', 'ab'); 返回结果1
SELECT INDEX('abc', 'd'); 返回结果0
 同时使用SUBSTRING和INDEX的例子:
利用CONTACT表显示表中每个人的first name和last name,使用SUBSTRING和INDEX函数的方法为:
SELECT
SUBSTRING (contact_name, FROM INDEX (contact_name,', ') +2)
|| ' ' || SUBSTRING (contact_name FROM 1
FOR INDEX (contact_name, ',') -1)
(TITLE 'Contact Names')
FROM contact; 

          

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值