在csdn上也看到一个帖子叫Oracle常用函数110.大概的看了一下,里面数据计算的居多,协方差之类的.自己觉得用到的不多,今天看到的这个,不是很全,稍微增加了一下,等以后用到的时候可以查看.
一:字符函数名称 功用LOWER(xland) 将字符串表达式xland中的所有大写字母转换为小写字母UPPER(xland) 将字符串表达式xland中的所有小写字母转换为大写字母INITCAP(xland) xland字符串中首字母转换成大写 SUBSTR(xland,start,length) 返回字符串表达式xland中从第start开始的length个字符(按字符数计算长度)substrb(xland,start,length) 返回字符串表达式xland中从第start开始的length个字符(按字节数计算长度) LENGTH(xland) 返回字符串xland的字符长度LENGTHb(xland) 返回字符串xland的字节长度 LTRIM(xland) 去掉字符串xland左侧的空格,并返回值RTRIM(xland) 去掉字符串xland右侧的空格,并返回值Trim(xland) 去掉字符串xland两端的空格,并返回值 REPLACE(xland,str1,str2) 将字符串xland中所有str1换成str2 INSTR(xland,str,start,times) 在xland字符串中搜索str字符串,start为执行搜索操作的起始位置,times为搜索次数CHARINDEX返回字符串中指定表达式的起始位置。语法CHARINDEX ( expression1 , expression2 [ , start_location ] )如果在 expression2 内没有找到 expression1,则 CHARINDEX 返回 0。 二:日期函数名称 功用SYSDATE 返回系统当前日期和时间NEXT_DAY(day,char) day为date型,char为字符串型代表星期几,假设今天是2009-7-18星期六,那么next_day(sysdate,'星期一');返回的是2009-7-20LAST_DAY(day) 返回day日期所指定月份中最后一天所对应的日期ADD_MONTH(day,n) 返回day日期在n个月后(n为正数)或前(n为负数)的日期MONTHS_BETWEEN(day1,day2) 返回day1日期和day2日期之间相差得月份,两个参数的格式必须一致,此函数不好用 三:数据类型转换函数名称 功用to_char(xland,[format]) 将日期或数字类型的变量xland转换成字符串类型给一个格式字符串yyyy-mm-dd hh-mi-ssto_date(xland,[format]) 将字符串转换成指定格式的日期形式TO_NUMBER(xland) 将字符型数据转换成数字型数据 四:集合函数名称 功用AVG 计算一列值的平均值COUNT 统计一列中值的个数MAX 求一列值中的最大值MIN 求一列值中的最小值SUM 计算一列值的总和五:预定义错误名称 功用zero_divide 发生被0除的错误case_not_found 在case语句中没有包含必须的where子句no_data_found select into 语句没有返回任何数据dup_val_on_index 试图在一个具有唯一约束的列中插入重复的值invalid_error 发生一个算法、转换、截断、大小约束错误(sql语句中)value_error 发生一个算法、转换、截断、大小约束错误(过程性语句中)六:显式游标属性名称 功用cursor_name%isopen 打开状态true,关闭状态falsecursor_name%found 最近一次提取游标操作,成功为true,失败为falsecursor_name%notfound 与cursor_name%found相反cursor_name%rowcount 最近一次提取到的数据行的序号七:隐式游标属性属性 值 select insert update deletesql%isopen false false false falsesql%found true 有结果 成功 成功sql%found false 没结果 失败 失败sql%notfound true 没结果 失败 失败sql%notfound false 有结果 成功 成功sql%rowcount 返回行数只为1 插入的行数 修改的行数 删除的行数