常用转换函数
函数 | 功能 | 实例 |
---|---|---|
TO_CHAR | 转换成字符串类型 | TO_CHAR(1234.5,’$9999.9’) |
TO_DATE | 转换成日期类型 | TO_DATE(‘1980-01-01’,‘yyyy-mm-dd’) |
TO_NUMBER | 转换成数值类型 | TO_NUMBER(‘1234.5’) |
常用其他函数
函数 | 功能 |
---|---|
NVL(a,b) | 如果a的值为NULL,则返回b的值,否则返回a的值 |
NVL2(a,b,c) | 如果a的值为NULL,则返回c的值,否则返回b的值 |
DECODE(value,ifa,a1,ifb,b,…,else) | 如果value的值为ifa,则返回a的值,如果value值为ifb则返回b的值,否则返回else的值 |
常用分析函数
函数 | 功能 |
---|---|
ROW_NUMBER | 函数返回一个唯一的值,当遇到相同数据时,排名按照记录集中的记录顺序依次递增 |
DENSE_RANK | 函数返回一个唯一值,当遇到相同数据时,所有数据排名都是一样的 |
RANK | 函数返回一个唯一的值,当遇到相同数据时,所有数据的排名是一样的,同时会在最后一条相同记录和下一条不同记录的排名之间空出排名 |
以上函数用于为每条记录产生一个从1开始至N的自然数,N的值可能小于等于记录数的总数。这三个函数的唯一区别在于遇到相同数据时的排名策略,用于解决累计排名问题。
语法:函数名(【参数】)OVER(【分区句子】【排序句子】)